레이어3(Layer3) - 네트워크 계층의 프로토콜 IP(network)
1. IP(Internet Protocol)역할
- TCP 세그먼트가 만들어지면 다음은 IP처리가 시작된다
- 지정한 대상 서버까지 전달 받은 데이터를 전달
- 반드시 데이터가 전달된다는 보장은 없다
- 라우팅
2. 커널 내의 IP 처리
- TCP 세그먼트에서 IP헤더를 붙여 IP 패킷을 생성한다
- 대상 서버까지 IP패킷 형태로 네트워크를 경유해서 도달
- 기본적으로 TCP헤더, IP헤더는 20byte이기 때문에 첫번 째 패킷은 사이즈가 커진다
3. IP주소를 이용한 최종 목적지로의 데이터 전송
- IP에서 최종 목적지 서버까지 복수의 네트워크를 경유해서 데이터를 전송한다. 이때 사용되는 것이 대상 서버를 나타내는 IP주소다
1) IP 주소(IP Address)
- IP 주소 = 네트워크 부 + 호스트 부(network + host)
* 네트워크 부
- 어떤 네트워크인지 가르킨다
- IP 주소의 어디 까지가 네트워크 부 인지 표시하기 위해 '/24' 와 같은 CIDR(사이더) 표기 사용 하거나 서브넷 마스크를 사용(Subnet mask)
- 같은 네트워크 내 컴퓨터 IP 주소는 네트워크부를 동일 값으로 설정
- 호스트 부 : 해당 네트워크 내에 있는 컴퓨터(소유자)를 가리킨다
* 네트워크 주소(Network address) & 브로드 캐스트 주소(Broadcast address)
- 네트워크 주소 : IP 주소 중 호스트 부의 비트가 모두 0 인것
- 브로드 캐스트 주소 : 호스부의 비트가 1 인것
- 호스트에게 할당 해서는 안되는 특별한 주소이다
4. 라우팅
- IP는 경로 도중에 다양한 처리가 이루어 진다
- IP 주소를 이용해 대상 서버를 지정할 수 있다
1) 대상 서버가 항상 같은 곳이 아닌 다른 네트워크에 있다면?
- 최종 목적지에 도착 할 떄까지 목적지를 알고 있는 라우터에게 전송 부탁
* 라우터
- IP 패킷을 받은 라우터는 해당 IP 패킷의 헤더에 목적지를 확인해서 보낼 곳을 찾는다
- 라우팅 테이블을 이용(목적지 정보가 적힌 테이브)
* 기본 게이트 웨이(default gateway)
- 외부와 접속하는 네트워크는 보통 기본 게이트 웨이라는 라우터가 있다
- 외부 세계와 연결된 라우터를 기본 게이트 웨이로 지정 해야한다
- 네트워크 A와 네트워크 B 사이에 소속된 서버가 IP 패킷을 보내려한다
: IP 주소를 가지고 목적지가 E네트워크 라는건 알 수 있지만 라우팅 테이블에 정보가 없다
: 이 경우 기본 게이트 웨이에게 패킷을 보낸다
* TTL(Time to Live)
- 라우팅간에 라우팅 테이블 주소가 잘못 되어 패킷이 네트워크 상을 떠돌아 다니는 현상 발생(패킷 좀비)
- IP 헤더는 생존 시간 정보를 가지고 있다
- 예로 TTL = 64 면 라우터를 한번 경유 할 때마나 1씩 감소한다, 0이되면 라우터는 해당 패킷을 파기한다
'IT_Infra > WebFlow' 카테고리의 다른 글
[IT_Infra] 레이어2(Layer2) - 데이터 링크 계층의 프로토콜 이더넷(ethernet) (0) | 2016.11.20 |
---|---|
[IT_Infra]레이어4(Layer4) - TCP의 기능 (0) | 2016.11.19 |
[IT_Infra] 레이어4(Layer4) - 전송 계층 프로토콜 TCP (0) | 2016.11.19 |
[IT_Infra] 세션을 남겨두는 기능 Keep-Alive (0) | 2016.11.18 |
[IT_Infra] 레이어7(Layer7) - 애플리케이션 계층의 프로토콜 HTTP(applicationLayer) (0) | 2016.11.18 |