
Chapter 5. Network Layer (Internet Layer) 배경지식 Physical Layer & Datalink Layer 5주차 2일 0403 : Circuit Switching 6주차 1일 0409 : Message Switching 6주차

네트워크 주소와 클래스 분류 앞선 포스트에서 IP는 대기업, 중기업, 소기업, 멀티캐스트, 미래를 위한 주소 이렇게 5개로 클래스가 나뉜다고 했다. Class A 클래스 A의 경우에는 첫 비트가 0으로 시작하는 8bit를 Netid로 사용하고 나머지 24bit를 ho

IP주소라는 것은 앞선 설명들처럼 두 가지 방식으로 설계되었다. Netid, Hostid 라는 부분으로 나누어져있다. 한편, 예를 들어 어느 기업에서 네트워크에 접속하기 위해 통신사로부터 Netid를 할당받는다고 해보자. 예를 들어, 210.94.0.0이라는 네트워크가
Internet protocol (IP) 전송 방식은 기본적으로 TCP/IP protocol을 사용한다. 여기서 TCP와 IP는 다른 개념으로 분리하여 생각해야 한다. IP는 기본적으로 Unreliable하고 Connectionless한 프로토콜이며, 문제를 해결해주지
Delivery > Delivery : 실제로 IP 패킷을 물리적으로 전송하는 것. Connectionless와 Connection-oriented 중 IP는 Connectionless 방식이다. 그저 패킷을 전달만 하는 방식이다. Direct delivery 전

이런 네트워크가 있다고 해보자. 또, 각각의 Router들은 자신만의 Routing Table을 가지고, Host들도 자신만의 Routing Table을 가지고 있을 것이다. 예를 들어 192.16.7.2라는 host가 194.17.21.7이라는 host로 데이터를 보

RARP는 Host가 자신의 IP주소를 알지 못할 때, 자신이 사용할 수 있는 IP주소를 할당받으려고 사용한다.예를 들어, 우리가 컴퓨터에서 IP 주소를 직접 적는 것이 아닌 이상 자동으로 컴퓨터가 IP를 할당받아 사용하게 되는데, 이때 RARP를 사용해서 자신의 IP

예를 들어, 어떤 Host의 IP주소가 10.0.0.1인 경우를 생각해보자. 이 주소는 Private Address로 사설 IP이다. Private Address란 따로 허가를 받지 않고 자유롭게 사용이 가능한 주소라고 했다. 이 Private Address 주소군은

기존이나 웹에서는 IPv4 버전을 사용한다. 그러나, IPv4 버전은 사용 가능한 주소의 개수가 고갈되었고, 헤더의 길이가 20바이트부터 60바이트까지 가변적이라는 특징이 있다. 처음 IPv4 버전을 사용했을 때보다 지금은 host의 개수가 훨씬 많아져서 IPv4에서

📌 Congestion 이란? 혼잡이라는 뜻을 가지며, 네트워크 상에서 패킷들이 너무 많아 혼잡이 발생한 경우를 말한다. 여기서는 Data traffic에 포커스를 두고 지켜봐야 한다.예를 들어, Router 내부의 CPU에서 패킷을 처리하는 속도보다 Router의

들어온 패킷을 어느 인터페이스로 보낼 지를 결정하는 네트워크의 소프트웨어 일부분이다. 라우터는 CPU가 라우팅 테이블 엔트리를 보고 어느 인터페이스로 보낼 지를 결정한다. 그렇다면 이 라우팅 테이블 엔트리는 어떻게 만들어지는 지에 대해 알아보자.우선 Datagram P

Bellman's equation을 기반으로 시행하는 알고리즘이다. Bellman's equation은 다음과 같다.여기서 i와 j는 각각 i가 Source node, j가 adjacent node라고 생각할 수 있다. 여기서 source는 1이다. 또한, node끼리

앞선 포스트에서 설명했던 Bellman-Ford, Dijkstra, FloydWell의 경우 Synchronous algorithm에 해당한다. 그러나, 이런 Synchronous algorithm에도 단점이 존재한다. Shortest Path를 구성하는 라우터들 중

Routing protocols in Internet internet은 interconnection of network라는 뜻으로 이는 네트워크를 서로 연결한다는 뜻이다. 이 네트워크를 연결해주는 장치를 Router라고 한다고 했다. 즉, 인터넷이란, 라우터에 의해 여

LSR은 라우터가 인접 정보를 공유하고, OSPF같은 프로토콜을 통해 LSA를 전파하며, Dijkstra 알고리즘으로 최단 경로를 계산하는 라우팅 방식입니다. 특히 Transient 에서의 Designated router로 인접 라우터들의 수를 관리할 수 있습니다.

우선 라우터에 대해 생각을 해보자. 라우터의 구성요소는 크게 어떻게 되어있을까?인터페이스Buffer(Incoming, Outgoing)CPU(Processing module) - 버퍼들에서 패킷을 옮김.Routing TableRouting Protocol Module

MPLS는 IP에 라벨을 추가해 Routing Table 대신 Mapping Table로 빠르게 처리하며,IP 없이도 라우팅이 가능해 전송 속도를 크게 향상. 또한, Traffic Engineering을 통해 유연한 경로 설정과 트래픽,라벨은 LDP로 라우터간 분배함.

Transport Layer는 Port 번호로 프로세스를 구분하며 데이터 전송을 관리합니다. TCP는 Reliable한 Connection-Oriented 방식으로 데이터 무결성을 보장하고, UDP는 빠르지만 Unreliable한 Connectionless 방식을 사용
UDP는 Unreliable Connectionless 프로토콜로, 오버헤드가 적고 빠른 전송이 필요한 환경에서 사용됩니다. 최신 정보 전달, 주기적 데이터 송출(RIP), 또는 간단한 요청-응답에서 유용하며, Checksum으로 데이터 무결성을 확인합니다. IPv6에

TCP는 Reliable Connection-Oriented 프로토콜로, 3-way/4-way handshaking으로 안전한 연결 설정 및 종료를 지원합니다. Sequence/Ack 번호로 데이터 전송을 관리하며 RST 플래그, Half-open에 대해 다룬다.

Sliding Window는 TCP의 Flow Control 방식으로, 송신자는 수신자가 설정한 Window 크기 내에서 데이터 전송을 관리합니다. Nagle's 알고리즘과 Clark's Solution은 Silly Window Syndrome을 해결하며, Window

TCP Error Control은 Checksum과 Ack를 사용해 데이터 무결성을 검증하며, RTO와 Fast Retransmission으로 손실된 세그먼트를 복구합니다. SACK 옵션은 효율적으로 누락된 데이터만 재전송해 네트워크 성능을 최적화합니다.

TCP Congestion Control: Slow Start로 cwnd 초기화, Additive Increase, RTO 시 Threshold 절반 감축. ECN으로 혼잡 예측, MSS 옵션으로 페이로드 최적화.

TCP 타이머: RTO로 재전송 제어, Keepalive로 Half-open 해결, Persistence로 Deadlock 방지, Time-waited로 연결 종료 안정성 확보. RTT 계산엔 Karn's Algorithm, Timestamp 옵션 활용. QUIC
Application Layer과 HTTP 1.0, 1.1, 2.0, 3.0까지를 소개한다. 이 과정에서 나오는 Cookie, Stateless, Stateful, Non-persistent, Persistent, Web cache, HOL 블로킹, QUIC까지 다룬다