컴퓨터네트워크 06주차 Network Layer 01
2022. 12. 29. 14:22ㆍCS/컴퓨터네트워크
주 교재 : Computer Networking : A Top-Down Approach
6주차 Network Layer 01
- Overview of Network layer
- What’s inside a router
- IP: Internet Protocol
1. Overview of Network layer
# Network layer
- sending 호스트에서 receiving 호스트로 segment 전송
- sending 호스트에서, segment를 datagram으로 캡슐화
- receiving 호스트에서, transport 계층으로 segment 전달
# Two key network-layer functions
network-layer function
▪ forwarding : router에서 input으로 들어온 것을 output으로 보내는 행위
▪ routing : 발신지에서 목적지까지 경로 설정
# Network layer: data plane, control plane
Data plane
- router input 포트로 들어온 datagram을 어떻게 router ouput 포트로 보낼지 결정
- forwarding function
Control plane
- 발신 호스트에서 목적 호스트까지 종단 경로를 따라 라우터 간에 datagram이 라우팅되는 방법을 결정
- two control-plane 접근
• traditional routing algorithms : implemented in routers
• software-defined networking (SDN) : implemented in (remote) servers
2. What’s inside a router
# Router architecture overview
# Input port functions
# Input port queuing
- Head-of-the-Line (HOL) blocking이 발생함.
# Switching fabrics
input 버퍼에서 올바른 output 버퍼로 packet을 전송
3가지 방법의 switching fabirc
- memory : 이미 있는 리소스를 활용하는 것이라 비용적인 측면에서 이득. 그러나 시간적인 단점이 있다.
- bus : memory의 시간적인 단점을 해소. 그러나 하나가 라인을 점유 중이면 다른 하나가 전송되지 않음 => 충돌
- crossbar : bus의 단점을 해소. point가 많으면 충돌을 피할 수 있음. 그러나 비용이 많이 듦
# Output ports
- Buffering : datagram이 도착하는 것이 전송 속도보다 빠르기 때문에 필요하다.
- scheduling discipline가 queue에서 전송할 datagram을 선택한다.
# Output port queueing
# Scheduling mechanisms
- FIFO
- 들어온 순서대로 보내는 것
- discard policy
• tail drop
• priority
• random
- priority scheduling
- 우선순위에 따른 queue를 만들어서, 우선순위가 높은 packet부터 전송
- Round Robin(RR) scheduling
• 클래스 간에 RR
• 우선 순위가 높은 것 먼저 보내고, 낮은 것 하나 보내고, 다시 높은 것 보내는 방식 반복
- Weighted Fair Queuing(WFQ)
• RR기반으로, 가중치를 나눈 Queue를 만들어서 데이터 전송
3. IP: Internet Protocol
# IP datagram format
# IP fragmentation, reassembly
- network link는 MTU(최대 전송 단위를 갖는다.
- 큰 IP datagram은 쪼개야한다.
- 한 datagram이 여러 datagram이 된다.
- 재조합은 마지막 도착지에서만
# IP addressing: introduction
- IP address : 32 비트로 호스트와 라우터 인터페이스를 구별
- 1 byte 단위로 끊어서 사용. 한 단위 당 0~255.
- ex : 223.1.1.1
# Subnets
- IP주소의 subnet 부분이 같은 device interface
- 각각 독립된 network를 subnet이라 부름
# IP addressing : CIDR
- CIDR = Subnet + Supernet
- 임의 길이 주소의 subnet 부분
- address format : a.b.c.d./x, x는 주소의 subnet 부분의 비트.
# Longest prefix matching
- 포워딩 테이블에서, 주소가 가장 많이 일치하는 곳으로 매칭
첫 번째 예시에서는, 0번 링크로 가야함
두 번째 예시에서는, 1과 2 모두 갈 수 있으나, 11000이 더 많이 일치하기 때문에 1번 링크로 가야함
# DHCP: Dynamic Host Configuration Protocol
DHCP : network에 접속할 때 동적으로 IP를 할당해주는 protocol
DHCP overview
- host broadcasts “DHCP discover” msg [optional]
- DHCP server responds with “DHCP offer” msg [optional]
- host requests IP address: “DHCP request” msg
- DHCP server sends address: “DHCP ack” msg
DHCP ACK는 client의 IP 주소와 첫 번째 홉(hop) 라우터 주소를 포함한다.
'CS > 컴퓨터네트워크' 카테고리의 다른 글
컴퓨터네트워크 09주차 Network Layer control plane (0) | 2023.01.06 |
---|---|
컴퓨터네트워크 07주차 Network Layer 02 (0) | 2023.01.04 |
컴퓨터네트워크 05주차 Transport Layer 02 (0) | 2022.12.28 |
컴퓨터네트워크 04주차 Application Layer_03/Transport Layer_01 (0) | 2022.12.27 |
컴퓨터네트워크 03주차 Application Layer_02 (0) | 2022.12.26 |