diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/Spring_Boot_D.iml b/.idea/Spring_Boot_D.iml
new file mode 100644
index 0000000..d6ebd48
--- /dev/null
+++ b/.idea/Spring_Boot_D.iml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..639900d
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..d58c325
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/chapter2/Ch02keyword.txt b/docs/chapter2/Ch02keyword.txt
new file mode 100644
index 0000000..d9c2227
--- /dev/null
+++ b/docs/chapter2/Ch02keyword.txt
@@ -0,0 +1,95 @@
+[AWS]
+- Amazon Web Service
+- 아마존에서 제공하는 클라우드 컴퓨팅 플랫폼
+
+[클라우드 컴퓨팅]
+- 물리적인 형태의 실물 컴퓨팅 리소스를 네트워크 기반 서비스 형태로 제공하는 것
+- IaaS : 사용자가 물리적인 하드웨어 직접 관리x, 직접적으로 서비스 이용을 통해 컴퓨터 리소스 사용
+- Paas : DB, OS, 애플리케이션 서버, WAS, JDK 등 미들웨어 제공
+- SaaS : 소프트웨어 또는 애플리케이션의 기능만 제공
+
+[리전과 가용영역]
+- 전세계에 물리적으로 호스팅 영역을 구분해둠.
+- 리전 : 개별 지리 영역으로 나라별 단위임. 가용영역이 2개 이상 구성된 지리적 영역. 리전은 서로 완전히 독립적임.
+- 가용영역 (AZ): 리전 내에 격리된 위치. 1개 이상의 물리 데이터센터를 묶은 논리적인 데이터 센터.
+ex) 한국 서울에서 호스팅 되는 영역을 서울 리전이라고 한다!
+
+[IP]
+- IP : 인터넷에 연결된 모든 장치들을 식별하기 위해 각 장비에게 부여되는 고유 주소
+- IPv4 : 32bit로 이루어진 주소
+- IPv6 : IPv4의 주소체계를 128bit 크기로 확장한 것
+-
+ - 네트워크 영역과 호스트 영역 두 가지로 나뉨
+ - 네트워크 영역 : 네트워크 식별, 라우팅할 때 사용, IP 주소 할당 기관에서 할당
+ - 호스트 영역 : 호스트 식별, 네트워크 관리자가 할당
+-
+ - 클래스 A : 32비트 중 앞 8비트를 네트워크 부로, 다음 24비트를 호스트 부로 나눈 것
+ - 클래스 A의 IP 주소 범위 : 0.0.0.0 ~ 127.255.255.255
+ - 클래스 B : 32비트 중 앞 16비트를 네트워크 부로, 다음 16비트를 호스트 부로 나눈 것
+ - 클래스 B의 IP 주소 범위 : 128.0.0.0 ~ 191.255.255.255
+ - 클래스 C : 32비트 중 앞 24비트를 네트워크 부로, 다음 8비트를 호스트 부로 나눈
+ - 클래스 C의 IP 주소 범위 : 192.0.0.0 ~ 223.255.255.255
+- <네트워크 주소와 브로드캐스트 주소>
+ - 네트워크 주소 : 네트워크 주소는 전체 네트워크에서 작은 네트워크를 식별할 때 사용되고, 호스트 부가 십진수로 0이면 그 네트워크를 대표하는 주소
+ - 브로드캐스트 주소 : 하나의 네트워크에 있는 모든 호스트에 동시에 데이터를 보낼 때 사용되는 전용 IP 주소, 호스트 부가 255
+
+[서브네팅, 서브넷, 서브넷 마스크]
+- 서브네팅 : IP주소 낭비를 방지하기 위해 네트워크를 분할하여 효율적으로 사용하는 개념
+ - 장점 : IP주소의 자원 낭비를 최소화
+- 서브넷 : 분할된 네트워크, IP주소에서 네트워크 영역을 부분적으로 나눈 부분
+- 서브넷 마스크 : P 주소를 서브넷팅하는 경우 IP 주소와 별도로 어디까지가 네트워크 부이고 어디까지가 호스트 부인지 구별하는 식별자
+ ,네트워크 주소인 '1'과 호스트 주소인 '0'으로 이루어짐.
+ - A class 기본 서브넷 마스크 : 255.0.0.0
+ - B class 기본 서브넷 마스크 : 255.255.0.0
+ - C class 기본 서브넷 마스크 : 255.255.255.0
+ex ) 150.115.120.13/27의 네트워크 영역과 호스트 주소의 범위, 개수
+ip : 150.115.120.13
+subnet : 255.255.255.22
+(and 연산) ->
+네크워크 영역 : 150.115.120.0
+호스트 영역 : 00000 -> 호스트 범위 : 2^5 -2 (네크워크 + 브로드) = 30
+브로드캐스트 주소 : 150.115.120.31
+
+[라우팅]
+- 라우팅 : 네트워크에서 경로를 선택하는 프로세스, 미리 정해진 규칙을 사용하여 최적의 경로를 선택.
+- 라우팅은 네트워크 통신의 효율성을 높임.
+- 라우터 :
+ - 데이터의 경로 결정 : 네트워크 지표를 분석하여 최적의 경로 찾음
+ - 데이터 전달
+ - 로드 밸런싱 : 여러 경로를 사용하여 동일한 데이터 패킷의 여러 사본을 전송할 수도 있음
+- 과정 : 데이터는 패킷 형태로 네트워크를 통해 이동함 -> 패킷이 도착하면 라우터는 라우팅 테이블에서 그 주소를 찾음
+ -> 그 후 라우터는 패킷을 네트워크의 다음 지점으로 전달함
+- 정적 라우팅 : 네트워크 관리자가 정적 테이블을 사용하여 네트워크 경로를 수동으로 구성하고 선택, 일정하게 유지
+- 동적 라우팅 : 실제 네트워크 조건에 따라 런타임에 라우팅 테이블을 만들고 업데이트,동적 라우팅 프로토콜을 사용하여 가장 빠른 경로 찾음
+
+[VPN, VPC]
+- VPN : 가상사설망, 네트워크 A와 네트워크 B가 실제로 같은 네트워크 상에 존재하지만 논리적으로 다른 네트워크인 것 처럼 동작하게 해줌
+- VPC(Virtual Private Cloud) : 자체 데이터 센터에서 운영하는 기존 네트워크와 아주 유사한 가상 네트워크. VPC별로 네트워크를 구성하여 각각의 VPC에 따라
+ 다르게 네트워크 설정을 줄 수 있음. 각각의 VPC는 완전히 독립된 네트워크처럼 작동.
+[사설 IP주소, 공인 IP 주소]
+- 사설 IP주소 : 인터넷에서 공인된 IP 주소를 사용하지 않고, 사적인 용도로 임의 사용하는 IP 주소
+- 공인 IP주소 : 인터넷 공식 기관(ICANN, KISA ..)에 의해 할당 받은 공인된 IP 주소
+
+[인터넷게이트웨이]
+- 인터넷게이트웨이는 VPC와 인터넷 간의 통신을 가능하게 하는 수평 확장가능한, 중복가능한, 고가용성 VPC 컴포넌트
+
+[포트포워딩]
+- 포트를 전달해주는 것
+- 특정한 포트로 들어오는 데이터 패킷을 다른 포트로 바꿔서 다시 전송해주는 작업
+- 사설 ip 주소는 여기 저기서 사용하므로 공인 ip 처럼 특정 기기를 가리키지 않음 -> 공유기가 보유한 공인 ip를 알려줘야 함!
+ -> 공인 ip로 들어오는 특정 포트의 연결을 어디어디로 연결하라고 공유기에 설정 해야 함 -> 포트 포워딩!!
+- 클라이언트는 목적지의 사설IP에 대한 정보를 모름 -> 메시지를 보낼 때는 목적지의 공공IP를 적어 보냄
+ -> 그러나 이는 공공IP이기 때문에 이를 받은 NAT 프로토콜은 어떤 기기한테 온건지 알 수가 없음 -> NAT Traversal Problem !! -> 해결책 : 포트포워딩
+
+[NAT 프로토콜]
+- Network Address Translation : 네트워크 주소를 변환해줌
+- 공인 ip를 사설 ip로 매핑 시켜줌
+- 인터넷으로 정보를 보낼 때는 사설ip를 공공ip로 바꿈
+- 인터넷으로부터 온 정보를 받아드릴 때는 공공ip를 사설ip로 바꿈
+
+[포트번호]
+- 포트 : 호스트 내에서 실행되고 있는 프로세스를 구분짓기 위한 16비트의 논리적 할당
+- 포트는 컴퓨터 안에서 프로그램을 찾을 때, ip 주소는 컴퓨터를 찾을 때 필요한 주소!
+- 포트번호는 어떤 프로그램에 접속할 것인지를 컴퓨터에게 알려줌
+
+