[ Internet protocol ]
frame Datalink layer : 연결만 관여
packet Network layer : 라우팅, 에러 관리
[ # Datagram protocol ]
- connectionless service
- 각각의 패킷이 독립적임
- 패킷 송신시 경로가 그때그때마다 네트워크 상황에 따라 달라짐
* TCP/IP (TCP over IP): ip packet 전송은 순서를 보장하지 않지만 TCP가 위에서 순서를 맞춰줌
[ # IP (IPv4) ]
- unreliable, connectionless databgram protocol
- best-effort delivery service (최대한 노력하는 서비스(100%보장 없단의미))
- no error control/flow control
- error detection
- reliability 가 중요하다면 TCP와 함께 써야함
- 20~60bytes 사이 가변길이 header를 갖는다(IPv6는 40bytes 로 고정)
- 각행은 4bytes
[ header 규격 설명 ]
# 1. VER : IP version (현재는 ver.4 사용)
# 2. HLEN : header length, 행 갯수를 의미
* header length 가 5일 경우 header 의 크기는 5*4bytes = 20bytes
# 3. Service : TOS(type of service), DS(Differentiated service) 와 같이 서비스 종류를 구분하는 용도
* TOS : 4비트를 DTRC로 나누어, 원하는 서비스 형태를 표현 (eg: FTP 0100(T가 제일 중요), DNS 1000(D가 제일 중요))
# 4. Total length : IP datagram 길이, data 크기를 파악하기 위함
[ Fragmentation : 단편화 ]
네트워크마다 MTU가 다르므로 datagram 을 단편화 해야한다.
아래 #5~#7 의 Identification, Flags, fragmentation offset 은 단편화 한 IP packet 의 순서를 구분하여 도착지점의 reassembly를 가능케 한다.
* MTU (Maximum transfer unit) : 송신가능한 최대 크기
* reassembly 는 최종 도착점에서만 한다. (MTU에 맞게 단편화한 IP packet을 중간 경유지 네트워크에서 다시 합치지 않는다)
# 5. Identification : fragmentation 이후 reassemble 을 할 때 ip packet 을 구분하는 용도
# 6. Flags : fragmentation 후 마지막 패킷을 구분하기 위한 용도로 사용
# 7. fragmentation offset : 패킷 순서표시
# 8. Time to live (TTL) : 라우터를 거칠 때 마다 -1, 0이 될 경우 라우터에서 discard
# 9. Protocol : ip packet을 처리 후 상위계층 어디로 보내야 하는지 구분자 역할. TCP(6)/UDP(17)/ICMP(1) 등
# 10. Headerchecksum : 헤더 에러 체크 용도
# 11. Options : 최대 40bytes.
1) no operation option : header 4bytes 크기를 맞추기 위함
2) end of option : header 4bytes 크기를 맞추기 위함
3) record route option : internet router 리스트 record 목적
4) strict source route option : 송신자가 거쳐갈 route를 지정할 경우 사용
# IPv6가 IPv4에 비해 갖는 장점
1. address 주소가 훨씬 많음. 128bits 크기
2. 고정 header format 및 크기(40bytes)를 가지므로 처리 용이
3. 보안
# Transition from IPv4 and IPv6 : IPv4 에서 IPv6 으로의 전환
1. Dual stack : IPv4, IPv6을 모두 사용, DNS 의 응답으로 IPv4/IPv6 구분
2. Tunneling : IPv6 --> IPv4 --> IPv6 와 같이 중간 라우터구간에서 IPv4 사용하는 경우 사용.
3. Header translation : IPv6 헤더를 IPv4 헤더로 변환, 반대의 상황도 마찬가지.
※ KOCW 성균관대학교 안성진 교수님의 컴퓨터네트워크 강의 참고
'Computer Science > data comm & network' 카테고리의 다른 글
[Network] 컴퓨터네트워크 26~27 : IP/MAC, ARP, DHCP, ICMP, ping, traceroute (0) | 2021.02.01 |
---|---|
[Network] 컴퓨터네트워크 21~22 : IPv4, IPv6, Mask, Subnet, NAT (0) | 2021.01.24 |
[Network] 컴퓨터네트워크 17 : 무선 WAN (0) | 2021.01.21 |
[Network] 컴퓨터 네트워크 16 : 계층별 장비 및 특징 (repeater, hub, switch, bridge, router) (0) | 2021.01.20 |
[Network] 컴퓨터네트워크 13~15 : 무선LAN, IEEE 802.11, BSS/ESS, Ad hoc, DCF/PCF, NAV, Bluetooth (0) | 2021.01.19 |