개발자 끄적끄적
컴퓨터 네크워크(2023.11.24) 본문
<Delay>
1. Transmission Delay = (packet length) / (transmission rate)
2. Propagation Delay = (distance) / (propagation speed)
3. Processing Delay = time required to process a packet in a router or a destination host
4. Queuing(대기열) Delay = time a packet waits in input and output queues in a router
<Throughput>
- the number of bits(=payload) passing through the point in a second
<Packet Loss>
- the number of packets lost during transmission
<Congestion Control(혼잡제어)>
- 목적 : improving performance
- Although congestion at the network layer is not explicitly addressed in the Internet model
- Congestion at the network layer is related to two issues, throughput and delay
- cf) flow control
<Backpressure method for alleviationg congestion>
1. Backpressure : 알음알음 전송
2. Choke packet : 바로 source로 Choke packet을 전송
<IPv4(IP version 4) addresses> - 중요!
- The identifier used in the IP layer of the TCP/IP protocol suite to identify the connection of each device to the Internet is called the Internet address or IP address
- IPv4 address is a '32-bit' address that uniquely and universally defines the connection of a host or a router to the Internet
The IP address is the address of the connection, not the host or the router
- IP주소는 한 bit씩 10진수로 표시
<Hierarchy in addressing>
- IP address = network id : host id -> total 32bit
- Prefix(network id - n bits) : Suffix(host id - (32-n)bits)
- 네트워크 구분 : network id, 학교내에 있는 컴퓨터 : host id로 구분
- host id -> subnet id + host id 로 분리한다, subnet id는 network id에 포함된다
- subnet id도 network id에 포함된다
- network id는 고유하며 host id는 같을 수 있다
1. LAN = subnet id 1
- Network(id11, id12, id13, ...)
2. subnet id 2
- Network(id21, id22, id23, ...)
3. subent id 3
- Network(id31, id32, id33, ...)
<Classful Addressing>
- Class A
- 0 Prefix(=network id, 8bit), Suffix(=host id, 24bit)
- Networks/ stations : 128/16,772,216
- First byte : 0 to 127(주소의 범위)
- Class B
- 10 Prefix(16bit), Suffix(16bit)
- Networks/ stations : 16,384/ 65,536
- First byte : 128 to 191
- Class C
- 110 Prefix(24bit), Suffix(8bit)
- First byte : 192 to 223
- Class D
- 1110 Multicast(IPTV) addresses, Prefixes(Not applicable)
- First byte : 224 to 239
- Class E
- 1111 Reserved for future use, Prefixes(Not applicable)
- First byte : 240 to 255
<Classless Addressing>
- IPv6(128bit)
- The short-term solution still uses IPv4 addresses, but it is called classless addressing
Prefix length(network id) : slash notation(CIDR : classless inter-domain routing)
byte | byte | byte | byte / n(Prefix length)
ex) 12.24.76.8/8
23.14.67.92/12
220.8.24.255/25
<IPv4 datagram format>
- HLEN : 32bit 단위
- Total length : IP datagram 길이, 8bit 단위
- Header : 20~60bytes
- Header + Payload : 20~65,535bytes
<IPv4 datagram header>
- Internet Header Length(IHL) (4)
- header의 길이, 23bits 단위, Option이 없는 경우에는 5
- Type of Service(ToS) (8)
- 7~5 : one of eight levels of precedence(datagram처리의 우선순위)
- 4(D flag) : low delay connection
- 4(T bit) : high throughput
- 2(R bit) : high reliability
- 1(C bit) : low cost
- Total length (16)
- header와 data를 포함한 IP datagram의 길이, 8bits 단위
- Identification (16)
- 하나의 datagram에서 분할된 모든 fragment에 같은 번호(Sequence number와 다르다)
- Flags (3) : fragmentation 제어 falg
- 0(More Flag bit) : 마지막 fragment이면 0
- 1(Do not Fragment bit) : datagram이 fragment되면 안되다
- Fragment offset (12)
- original message를 기준으로 fragment의 데이터의 위치, 8 byte 단위로 계산 -> fragment시 8 byte 단위로 자른다
- Time to Live(TTL) (8)
- datagram을 보내는 sender가 셋팅하며 router를 거칠 때마다(hop 수) 하나씩 감소
- TTL값이 0이 되면, 중계 중지 후 버린다, 너무 작으면 도착 못한다, 너무 크면 불필요한 traffic 유발 -> 40~64권장
- Protocol (8) : datagram이 운반하는 transport layer 프로토콜 구분
- Header checksum (16)
- header부분만 적용, Router 통과 시마다 다시 계산
<Multiplexing and demultiplexing using the value of the protocol field>
- Some protocol values(number)
1. ICMP : 01
2. IGMP : 02
3. TCP : 06
4. UDP : 17
5. OSPF : 89
<Fragmentation : Maximum Transfer Unit(MTU)>
- IP는 network에서 전송할 수 있는 최대 크기로 datagram의 크기를 줄인다
즉, network interface의 MTU보다 fragment가 작아야한다
<Security of IPv4 Datagrams>
- Packet Sniffing
- Packet Modification(수정)
- IP Spoofing
<ICMPv4 - Internet Control Message Protocol>
- IPv4 has no error-reporting or error-correcting
- ICMP is error-reporting message and query messages
- ICMP는 오류를 수정하는 것이 아니고 보고만 한다
오류 정정은 상위 계층(transport)에서 수행하며 오류 메시지는 최초 발신지로 보내진다
<Example of traceroute program>
- 발신지에서 목적지까지 패킷 경로 추적, 경로상의 라우터 IP주소 확인
<Mobile IP>
- Home addrerss and care-of-address(CoA) : 임시로 할당받은 주소
- Not mobile communication, but nomadic(유목민의) application
<Home agent and foreign agent>
Home network(Mobile host original home) - Home agent <-Internet-> Foreign agent - Foreign network(Mobile host)
- Mobile host가 Foreign agent역할을 한다
<Data transfer>
- Home agent - (Encapsulation : header를 붙이는 것)
- 소스주소 : 홈 에이전트 주소
- 목적지 주소 : 외지 에이전트 주소
- Foreign agent - (De-capsulation : header를 까는 것)
- 등록 테이블을 참조하여, 이동 호스트의 CoA로 전달
- 소스주소 : 홈 주소
- 목적지 주소 : 원격지 주소
<DHCP(Dynamic Host Configuration Protocol)>
- DHCP is an application-layer protocol, using the client-server paradigm, that actually helps TCP/IP at the network layer
- IP주소를 자동으로 단말기에 할당하는 기능을 수행
<NAT(Network Address Translation)>
- mapping between the private and public address
- private IP addresses for internal communication and a set of public IP addresses for communication with the rest of the world
<Forwarding of IP packets>
- Forwarding means to place the packet in its route to its destination
- forwarding based on the destination address
<Multi-Protocol Label Switching(MPLS)>
- routers that implement switching technology
- 라우터는 테이블로 검색해야하지만, 스위치는 레이블로 테이블을 access한다
- MPLS header added to an IP packet
<- MPLS Header(4 bytes) | {IP Header | IP Payload} -> '{}' IP에서 처리하는 data들
<IPv5>
- larger address space
- 128bits(16bytes), the autoconfiguration of hosts
- IPv4에서는 DHCP 라우터를 돌려야 했는데 IPv6은 autoconfiguration이 가능
- better header format
- new options
- allowance for extension
- support for resource allocation
- Security
'컴퓨터 네트워크' 카테고리의 다른 글
컴퓨터 네트워크(2023.11.29) (0) | 2023.11.30 |
---|---|
Data link layer(2023.10.31) (0) | 2023.11.05 |
컴퓨터 네트워크(2023.10.25) (0) | 2023.10.25 |