ICMP(Internet Control Message Protocol) : 인터넷 환경에서 오류에 관한 처리를 지원 ICMP 메시지 - DESTINATION UNREACHABLE: 수신 호스트에 접근이 불가능 - SOURCE QUENCH: 네트워크에 필요한 자원 부족으로 패킷 폐기 - TIME EXCEEDED: 시간 초과로 패킷 폐기 (TTL이 0이 되는 경우) - ECHO REQUEST/ECHO REPLY: ping 프로그램에 사용 - TIMESTAMP REQUEST/TIMESTAMP REPLY: 네트워크 지연을 측정 ICMP 헤더 형식 - 처음 8 바이트는 모든 메시지에 반드시 포함됨 - Type: 메시지를 구분 - Code: 메시지 내용에 대한 자세한 정보 - Checksum: 전체 메시지에 대한 ..
ARP(Address Resolution Protocol) - 수신 호스트의 IP 주소를 통해 수신 호스트의 MAC 주소를 제공 - ARP request라는 특수 패킷을 브로드캐스팅 - IP 주소에 해당하는 호스트만 ARP reply로 MAC 주소를 회신 - 브로드캐스팅 과정에서 수신 호스트가 얻은 송신 호스트의 MAC 주소와 IP 주소 매핑 값은 자동 저장 RARP(Reverse Address Resolution Protocol) - 하드 디스크가 없는 시스템은 송신자 자신의 IP 주소를 알 수 없음 - 송신 호스트의 MAC 주소를 통해 송신 호스트의 IP 주소를 제공 - RARP 를 전담하는 서버가 있어야 함 - RARP를 통해 자신의 IP 주소를 얻은 후 미리 정해진 호스트로부터 자신의 부트이미지를..
IPv6 (IPv4와 비교) 1) 주소 공간 확장 - IPv4의 32 비트에서 128 비트로 확장 - 최대 2128개의 호스트를 지원 2) 헤더 구조 단순화 - 오류 제어 등의 오버헤드를 줄여 프로토콜의 전송 효율 향상 3) 흐름 제어 기능 지원 - 흐름 제어 기능을 지원하는 필드(Flow Label)를 추가하여 일정 범위 내에서 예측 가능한 데이터 흐름을 지원 - 실시간 멀티미디어 응용 환경을 수용 IPv6 헤더 형식 - 헤더 40바이트 중 32바이트를 주소 공간으로 사용 - 필요 시 기본 헤더 뒤에 여러 개의 확장 헤더를 지원 - DS/ECN: 차등 서비스 및 혼잡제어 - Flow Label: 음성, 영상 등 실시간 서비스가 필요한 응용 환경에서 사용 현재 필드를 지원하지 않는 호스트 혹은 라우터 패..
DHCP (Dynamic Host Configuration Protocol) 프로토콜 - IP 주소를 여러 컴퓨터가 공유해서 사용 - 서버에 존재하는 풀(pool)에서 IP 주소를 가져옴 - DHCP 메시지 -> 응용 계층 DHCP 프로토콜의 주요 메시지(Options 필드) - DHCP_DISCOVER : 클라이언트가 DHCP 서버를 찾기 위한 브로드캐스트 메시지 - DHCP_OFFER : 클라이언트의 DHCP_DISCOVER 메시지에 대한 응답으로, DHCP 서버가 응답함 - DHCP_REQUEST : DHCP 서버에 DHCP_REQUEST 메시지를 전송하여 권고한 주소를 사용한다고 알림 - DHCP_ACK : 권고한 IP 주소를 사용 가능하면 메시지를 전송 - DHCP_NACK : 클라이언트가 DH..
IP 프로토콜 - 비연결형 서비스를 제공 - 패킷으로 분할/병합하는 기능 수행 - 헤더에 대한 체크섬만 제공 - Best Effort 방식의 전송 기능(-> 100% 전송을 보장하지 않음) - 오류제어나 흐름제어는 제공하지 않음 - DS(Differentiated Services) - 차등 서비스 제공용 - ECN(Explicit Congestion Notification) - 명시적 혼잡 제어 통지용 패킷 분할 관련 필드 - Identification: 분할되지 않은 패킷은 값을 순차적으로 증가하고 분할된 패킷은 동일한 번호를 부여함 - DF(Don’t Fragment): 수신자가 패킷 병합 기능이 없을 때 사용 패킷 분할을 금지시킴 - MF(More Fragment): 분할된 패킷의 처음과 중간은 1..
최단 경로 라우팅 - 패킷이 중개 과정에서 거치는 라우터의 수가 최소화되도록 라우팅 ex) 호스트 a -> 호스트 d: 라우터 b or c 호스트 a -> 호스트 g: 라우터 c 최단 경로 프로토콜 - 일반적으로 간에 위치하는 라우터(홉, Hop)의 수 - 패킷의 전송 지연시간, 전송대역폭, 통신 비용 등도 거리 기준이 되기도 함 거리 벡터(distance vector) 프로토콜 - 라우터가 자신과 직접 연결된 라우터와 라우팅 정보를 주기적으로 교환 - 각 라우터에서 개별 네트워크까지 패킷을 전송하는데 걸리는 거리 정보를 교환 - 필수 정보: 링크 벡터/거리 벡터/다음 홉 벡터 - 대표 프로토콜: RIP(Routing Information Protocol) -> UDP 프로토콜을 사용하여 정보를 교환 1..
네트워크 계층 목적: 송수신 호스트 사이의 패킷 전달 경로를 선택 주요 기능: 라우팅, 혼잡 제어, 패킷의 분할과 병합 라우팅 - 패킷의 전송 경로를 지정 - 공평 원칙, 효율 원칙 정적 라우팅(Static Routing) - 패킷 전송이 이루어지기 전에 경로 정보를 라우터가 미리 저장하여 중개 - 경로 정보의 갱신이 어려움, 네트워크의 변화에 대한 대처 부족 동적 라우팅(Dynamic Routing) - 라우터의 경로 정보가 네트워크 상황에 따라 적절히 조절됨 - 경로 정보의 수집과 관리로 인한 성능 저하 라우팅 테이블 - 라우터가 패킷의 적절한 경로를 찾기 위한 기본적인 도구 - 필수 정보: 목적지 호스트(패킷의 최종 목적지가 되는 호스트 주소) 다음 홉(목적지 호스트까지 패킷을 전달하기 위한 이웃 ..
네트워크 계층 목적: 송수신 호스트 사이의 패킷 전달 경로를 선택 주요 기능: 라우팅, 혼잡 제어, 패킷의 분할과 병합 혼잡: 네트워크에 존재하는 패킷의 수가 급격히 증가하여 네트워크 성능이 급격히 악화되는 현상 혼잡 제어: 혼잡 문제를 해결하기 위한 방안 (흐름 제어: 송수신 호스트 사이의 전송 속도 문제 혼잡 제어: 네트워크내의 전송 능력 문제) 혼잡의 원인 1) 타임 아웃 시간이 작으면 재전송이 자주 발생하여 혼잡도 증가 2) 패킷의 도착 순서가 다른 패킷들을 버리면 재송신해야 하므로 혼잡도 증가(Go-Back N 방식) 3) 모든 패킷에 대한 개별적으로 수신 응답을 처리하면 혼잡도 증가 (-> 패킷을 여러 개 모아서 응답 or 피기 배킹을 이용) 4) 패킷 생존 시간(TTL)을 너무 작게 설정하면..