분류 98

TCP(1) - 구조와 특징

개요TCP는 전송 계층에서 신뢰성 있는 데이터 전송을 제공하는 프로토콜이다. 패킷을 순서대로 전송하고, 오류 발생 시 재전송을 통해 데이터의 무결성을 보장한다. 연결 기반 프로토콜로, 데이터 전송 전에 연결을 설정하며, 연결 종료 시에는 명시적으로 연결을 종료한다.TCP의 특성스트림 전송: TCP는 데이터를 연속된 바이트 스트림으로 처리하며, 데이터의 경계를 구분하지 않는다.양방향 통신: TCP는 양방향 통신을 지원하여, 송신자와 수신자가 모두 데이터를 전송할 수 있다.오류 제어: TCP는 오류 제어를 통해 전송 중 발생한 오류를 탐지하고, 손상된 데이터를 재전송한다.흐름 제어: TCP는 수신자의 데이터 처리 능력에 맞춰 송신 속도를 조절한다.혼잡 제어: 네트워크 혼잡을 방지하기 위해 송신 속도를 조절하..

UDP

개요UDP(User Datagram Protocol)는 전송 계층에서 사용되는 비연결형 프로토콜로, 가벼운 헤더와 빠른 처리를 제공한다. 신뢰성 있는 데이터 전송(TCP)보다는 성능을 우선시하며, 멀티미디어 스트리밍, DNS, SNMP와 같은 응용에 적합하다.UDP 서비스비연결형 서비스: 연결 설정이나 종료 과정을 거치지 않고, 각 사용자 데이터그램을 독립적으로 처리한다.프로세스 간 통신: 소켓을 통해 IP 주소와 포트 번호를 사용해 데이터를 전송하며, 데이터를 적절한 프로세스에 전달한다.오류 제어: 검사합(Checksum)을 통해 오류를 검출할 수 있지만, 복구 메커니즘이 없어 오류가 발생한 데이터는 폐기된다.흐름 제어: 흐름 제어를 지원하지 않으며, 윈도우 메커니즘도 없다.혼잡 제어: 혼잡 제어 기능..

TransportLayer

개요전송층은 네트워크층과 응용층 사이에 위치하며, 응용층에 서비스를 제공하는 역할을 한다. 전송층은 네트워크로부터 서비스를 제공받고, 이를 이용하여 응용 프로그램 간의 데이터 전송을 처리한다.Internet 전송층 프로토콜신뢰성 있는, 순서대로 전달: TCP네트워크 혼잡 제어수신 측 흐름 제어연결 설정신뢰성 없는, 순서대로 전달되지 않는: UDP"최선의 노력"으로 동작하는 IP 확장제공되지 않는 서비스:지연 보장대역폭 보장TCP, UDP 가 핵심전송층 서비스프로세스 간 통신전송층은 응용층의 개체인 프로세스 간 통신을 제공한다. 전송층의 주 역할은 메시지를 적절한 프로세스로 전달하는 것이다.주소 체계: 포트 번호클라이언트와 서버 간 프로세스 간 통신에서 각 프로세스는 고유한 포트 번호로 식별된다.포트 번호..

Routing Algorithms

네트워크 계층: 제어 플레인네트워크 계층에서 제어 플레인은 라우팅 알고리즘을 통해 네트워크의 각 노드가 패킷을 어디로 보내야 할지 결정하는 역할을 한다. 전통적인 라우팅 알고리즘과 소프트웨어 정의 네트워킹(SDN)으로 나눌 수 있다.라우팅 알고리즘라우팅 알고리즘의 목표는 출발지에서 목적지로 데이터를 전달할 때 최적의 경로(최소 비용 경로)를 결정하는 것이다. 이 과정에서 "좋은" 경로는 최소 비용, 가장 빠른 경로, 또는 혼잡이 가장 적은 경로를 의미한다.그래프 추상화네트워크는 그래프로 추상화할 수 있다. 각 라우터는 그래프의 노드로, 라우터 간의 링크는 그래프의 간선으로 표현된다. 간선의 비용은 대역폭, 혼잡도, 또는 고정된 값에 따라 결정된다.라우팅 알고리즘의 분류링크 상태 알고리즘: 모든 라우터가 ..

IP(2) - 데이터 그램 구조와 단편화 및 검사합

IP 데이터그램데이터그램 구조IP 데이터그램은 헤더와 데이터로 구성된다.헤더: 패킷 전송에 필요한 제어 정보를 담고 있으며, 길이는 20바이트에서 60바이트이다.데이터: 실제 전송되는 데이터이다.데이터그램 헤더 필드버전(Version): IP 프로토콜의 버전을 나타낸다. (IPv4의 경우 4)헤더 길이(HLEN): 헤더의 길이를 나타내며, 4바이트 단위로 계산된다.서비스 유형(TOS): 데이터그램의 우선순위와 서비스 성격을 나타낸다.전체 길이(Total Length): 데이터그램 전체의 길이를 나타낸다.식별자(Identification): 단편화된 패킷을 식별하는 필드로, 모든 단편이 동일한 식별자를 가진다.플래그(Flags): 데이터그램이 단편화 여부를 제어한다.단편화 옵셋(Fragment Offset..

IP(1) - 주소지정과 클래스

IP의 개념IP(Internet Protocol)는 네트워크 계층에서 데이터 전송을 담당하는 프로토콜로, 패킷을 발신지에서 수신지까지 전달하는 기능을 한다.IP는 비연결형 프로토콜이며, 신뢰성 없는 전송을 제공한다. 이는 패킷이 손실될 수 있음을 의미하며, 데이터 재전송을 보장하지 않는다.상위 계층에서 오류 제어 및 흐름 제어 기능을 제공하는 TCP와 같은 프로토콜이 IP의 부족한 부분을 보완한다.주소 지정물리 주소 (Physical Address)MAC 주소: 네트워크 인터페이스 카드(NIC)에 내장된 고유 식별자로, 로컬 네트워크(LAN)에서 장치를 구분하는 데 사용. 48비트로 구성되며, 16진수 형식으로 표현. ex) 00:14:22:01:23:45유니캐스트(Unicast): 특정 장치에 데이터를..

Network Layer(3) - 서브넷, CIDR

서브넷(Subnet)서브넷(Subnet)은 하나의 큰 네트워크를 더 작은 여러 네트워크로 나누는 방법. 이를 통해 네트워크 관리를 더욱 효율적으로 할 수 있으며, 네트워크의 보안을 강화할 수 있다.서브넷의 주요 개념서브넷 마스크(Subnet Mask): IP 주소에서 네트워크 부분과 호스트 부분을 구분하는 데 사용된다. 서브넷 마스크는 연속된 1과 0으로 이루어져 있으며, 네트워크 부분을 1로, 호스트 부분을 0으로 표시한다.ex) 255.255.255.0 서브넷 마스크는 네트워크 부분을 24비트로, 호스트 부분을 8비트로 설정하는 것을 의미.서브넷 분할: 서브넷을 사용하여 네트워크를 분할하면 네트워크 주소 공간을 보다 효율적으로 사용할 수 있다. 예를 들어, 클래스 C 네트워크 192.168.1.0/2..

Network Layer(2) - 주소할당

IP 주소와 서브넷IP 주소IP 주소는 네트워크 인터페이스에 할당된 32비트 식별자. 호스트나 라우터의 각 인터페이스는 고유한 IP 주소를 가진다.IP 단편화 및 재조립(Fragmentation and Reassembly)MTU(Maximum Transfer Unit) 크기를 초과하는 큰 IP 데이터그램은 네트워크 내에서 여러 개의 작은 데이터그램으로 분할된다. 목적지에서 해당 데이터그램은 재조립되어 원래의 큰 데이터그램이 된다. 위 그림의 예제는 꼭 계산할 줄 알아야함 - 패킷 길이DHCP (Dynamic Host Configuration Protocol) DHCP는 호스트가 네트워크에 접속할 때 동적으로 IP 주소를 할당하는 프로토콜. DHCP는 IP 주소뿐만 아니라 라우터의 IP 주소와 DNS 서버..

Network Layer(1) - 네트워크층 기본 개념

네트워크 계층의 기본 원리 네트워크 계층은 데이터를 발신지에서 수신지로 전달하는 역할을 한다. 이 계층에서는 데이터그램을 사용해 상위 계층에서 받은 세그먼트를 네트워크 패킷으로 캡슐화한 후, 목적지에서 이를 역캡슐화하여 전송 계층으로 전달한다. 네트워크 계층 프로토콜은 모든 호스트와 라우터에서 동작하며, 라우터는 패킷이 지나갈 때마다 헤더 필드를 검사하고 적절히 포워딩한다.주요 네트워크 계층 기능포워딩(Forwarding)과 라우팅(Routing) 포워딩(Forwarding): 패킷을 라우터의 입력에서 적절한 출력으로 이동시키는 과정. - 데이터그램 방식에서 포워딩 결정은 패킷의 목적지 주소에 의해 결정된다.라우팅(Routing): 패킷이 발신지에서 목적지까지 갈 수 있는 최적 경로를 결정하는 과정. 이..

ARP

ARP는 IP 주소(논리 주소)와 MAC 주소(물리 주소) 간의 매핑을 수행하는 프로토콜로, 네트워크 상에서 IP 주소를 기반으로 MAC 주소를 찾아내는 역할을 한다. ARP는 주로 네트워크 내부에서 통신을 할 때 사용되며, 데이터를 전달하는 중요한 프로토콜이다.ARP의 개념논리 주소(IP 주소): 네트워크에서 장치들이 통신할 때 사용하는 고유한 주소로, 네트워크 간의 경로를 식별.물리 주소(MAC 주소): 로컬 네트워크에서 장치 간의 통신에 사용되는 하드웨어 기반의 고유한 주소.ARP의 동작 원리ARP 테이블ARP 테이블: 네트워크 상의 IP 주소와 MAC 주소의 매핑 정보를 저장하는 테이블. ARP 테이블은 주기적으로 갱신되며, TTL(Time To Live)을 설정하여 오래된 정보를 제거한다.ARP..