OSI 7계층과 TCP/IP 4계층 OSI 7계층은 네트워크 통신을 표준화한 모델로, 통신 시스템을 7단계로 나누어 설명한 것이다. 하지만 OSI 모델이 실무적으로 이용하기에 복잡한 탓에 실제 인터넷에서는 이를 단순화한 TCP/IP 4계층이 사용되고 있다. 각 계층은 하위 계층의 기능을 이용하고, 상위 계층에게 기능을 제공한다. OSI 7계층 응용 계층(Application Layer): User Interface를 제공하는 계층 사용자와 가장 가까운 계층으로 응용 서비스나 프로세스가 바로 이 계층에서 동작한다. HTTP, FTP 같은 통신 프로토콜도 여기에 속한다. 표현 계층(Presentation Layer): 데이터의 변환 작업을 하는 계층 응용프로그램이나 네트워크를 위해 데이터를 표현하는 것 데이..
6. 링크 계층: 링크, 접속망, 랜 6.1 링크 계층 소개 노드(node) 호스트, 라우터, 스위치, WiFi AP 링크(link) 통신 경로상의 인접한 노드들을 연결하는 통신 채널 한 링크에서 전송 노드는 데이터그램을 링크 계층 프레임으로 캡슐화해서 링크로 전송한다. 6.1.1 링크 계층이 제공하는 서비스 링크 계층의 기본 서비스 단일 통신 링크상으로 데이터그램을 한 노드에서 인접 노드로 "이동"시키는 것 ✖️ 그 외의 서비스 프레임화 거의 모든 링크 계층 프로토콜은 네트워크 계층 데이터그램을 링크 상으로 전송하기 전에 링크 계층 프레임에 캡슐화한다. 링크 접속 매체 접속 제어 프로토콜은 링크상으로 프레임을 전송하는 규칙에 대해서 명시한다. 신뢰적 전달 링크 계층 프로토콜이 신뢰적 전달 서비스를 제공..
5. 네트워크 계층: 제어 평면 🤨 네트워크 계층을 두개로 나누면? Control Plane: 네트워크 장비를 제어하는 뇌에 해당 Data Plane: 데이터를 전송하는 역할 5.1 개요 포워딩과 라우팅 개념은 네트워크 계층 학습 시 계속 등장하는 개념이다. 정확하게 짚고 넘어가자! 포워딩 라우터의 입력 포트에서 출력 포트로 패킷을 이동시키는 것 라우팅 출발지에서 목적지까지의 경로를 결정하는 것 라우터별 제어 각 라우터는 다른 라우터의 라우팅 구성요소와 통신하여 자신의 포워딩 테이블의 값을 계산하는 라우팅 구성요소를 가지고 있다. OSPF와 BGP 프로토콜이 이 라우터별 제어 방식을 기반으로 한다. 논리적으로 중앙 집중된 제어 컨트롤러가 포워딩 테이블을 작성하고 이를 모든 개별 라우터가 사용할 수 있도록..
4.3.5 IPv6 등장 배경: IPv4 주소 부족 문제 큰 IP 주소 공간의 필요에 따라, 새로운 IP 프로토콜인 IPv6가 개발되었다. IPv6 데이터그램 포맷 🙂 헤더를 IPv4와 비교해서 보면 좋다! 32비트였던 IPv4를 128비트로 2의 128승은 엄청 큰 수 hop limit은 TTL과 같다. 없으면 곤란하다. 데이터그램을 전달할 때마다 1씩 감소한다. 홉 제한수가 0보다 작아지면 데이터그램을 버린다. checksum이 없어짐. next hdr 옵션이 있으면 포인터로 가리키게 된다. 옵션이 또 있으면 next hdr가 있어 또 포인터로 가리키게 되고 이런식으로 하면 무한대까지 가능하지만 사이즈는 한정되어 있으므로 무한대까지는 안된다. 라우터한테 일을 덜 시킨다. 헤더들을 이해하는 것은 라우터..
4.3 인터넷 프로토콜(IP): IPv4, 주소 지정, IPv6 등 현재 사용 중인 IP는 두 가지 버전 IPv4와 IPv6이 있다. 4.3.1 IPv4 데이터그램 형식 버전 번호 4비트 데이터그램의 IP 프로토콜 버전을 명시 라우터는 버전 번호를 확인하여 데이터그램의 나머지 부분을 어떻게 해석할지 결정 헤더 길이 네비트로 IP 데이터그램에서 실제 페이로드가 시작하는 곳을 결정 IPv4 데이터그램은 헤더에 가변 길이와 옵션을 포함하므로 대부분 IPv4 데이터그램은 옵션을 포함하지 않으므로 대체로 IPv4 데이터그램 헤더는 20바이트이다. 서비스 타입(TOS) 서로 다른 유형의 IP 데이터그램을 구별 데이터그램 길이 바이트로 계산한 IP 데이터그램(헤더와 데이터)의 전체 길이 식별자, 플래그, 단편화 오프..
4.1 네트워크 계층 개요 각 라우터의 데이터 영역 역할은 입력 링크에서 출력 링크로 데이터그램을 전달하는 것이다. 네트워크 제어 영역의 근본적 역할은 데이터그램이 송신 호스트에서 목적지 호스트까지 잘 전달되게끔 local 포워딩, pre-router 포워딩을 대응시키게 만드는 것이다. 4.1.1 포워딩과 라우팅: 데이터 영역과 제어 영역 네트워크 계층의 근본적 역할은 송신 호스트에서 수신 호스트로 패킷을 전달하는 것 포워딩(전달) 네트워크 계층 데이터 영역에 의해 실행되는 매우 중요한 기능이다. 패킷이 라우터의 입력 링크에 도달했을 때 라우터는 그 패킷을 적절한 출력 링크로 이동시켜야 한다. 매우 짧은 시간(보통 몇 나노초) 단위를 갖기에, 대표적으로 하드웨어 실행된다. 라우팅 네트워크 전반에 걸쳐 출..