아래 글은 CS 공부를 하며 작성한 글입니다.
OSI 7계층
https://donotknowwhat.tistory.com/198
TCP/IP 계층별 프로토콜
응용계층
SSH : 22번 포트, 암호화 시켜서 날림
Telnet: 23번 포트, 인터넷 원격 접속 프로토콜
FTP: 파일전송 프로토콜 20포트(데이터 연결), 21포트(제어 연결)
HTTP: 하이퍼텍스트 문서를 웹에서(웹서버와 client 브라우전 간)교환하기 위한 프로토콜
SMTP: 전자우편 송신 담당 프로토콜
MINE: "
POP: 전자우편 수신 서비스 프로토콜
IMAD: "
DNS: 네트워크에서 도메인이나 호스트 이름을 숫자로 된 IP주소로 변환
DHCP: 인터넷 서비스 제공자가 IP주소를 관리하고 할당
SNMP: 네트워크(망)을 관리하기 위한 프로토콜
전송계층
TCP: 신뢰성, 연결지향형 프로토콜로 데이터 송수신 전 3-way 핸드셰이킹 사용, 체크섬 필수 사항. 송신한 데이터를 패킷단위로 전송. 수신측에서 잘못 전송된 패킷에 대해 재전송을 요구.
UDP: 비신뢰성, 비연결형 프로토콜, 체크섬O. TCP와 달리 패킷이나 흐름제어, 순차적인 데이터 전송, 단편화 및 전송 보장 등의 기능을 제공하지 않음.
TCP | UDP | |
기능 | 흐름제어, 혼잡제어, 오류 검출, 연결 설정 | 모두 수행 X |
헤더(header)에 체크섬 필드가 있다. (오류검사 시) |
필수 | 선택 |
재전송 요구 | 재전송 요구 X |
+ TCP는 연결지향형 프로토콜로 송신측은 수신측의 데이터 전송 여부를 확인할 수 있음
+ TCP는 중복 수신 문제를 해결하기 위해 순서번호를 사용
+ TCP계층에서는 패킷의 송신 순서와 동일하도록 패킷의 수신순서를 맞춰 재조립을 수행함
+ 혼잡제어기능 : 네트워크 상 트래픽이 폭주하는 현상을 방지하는 기능
+ TCP에서는 혼잡을 회피하기 위한 방법으로 Slow-Start 알고리즘 사용
+ 혼잡현상이 발생하면 Cwnd(데이터 전송에 따른 혼잡 윈도,임계값) = Cwnd / 2, 혼잡윈도우 값을 1로 떨어뜨림
네트워크 계층
IP 프로토콜: 비신뢰성, 비연결성, 데이터에 대해 연결도 신뢰도 하지 않고 보내는 역할
ICMP 프로토콜: 데이터의 오류 알려줌
ARP 프로토콜: IP -> MAC 주소(물리적 주소)
RARP 프로토콜: MAC주소 -> IP주소
IP 프로토콜
- 패킷을 분할, 병합하는 기능을 수행한다.
- 헤드 체크섬은 제공하지만, 데이터 체크섬은 제공하지 않는다.
- IP는 출발지와 목적지의 포트번호 지정 기능을 제공하지 않는다.
IPv4 와 IPv6 비교
IP 전송 방법에 따른 분류
IPv4의 전송방법 | IPv6의 전송방법 |
유니캐스트 | 유니캐스트 |
멀티캐스트 | 멀티캐스트 |
브로드캐스트 | 애니캐스트 |
유니캐스트: 하나의 송신자가 하나의 수신자에게 패킷을 보내는 방식 (특정인에게)
멀티캐스트: 하나의 송신자가 다수의 수신자에게 패킷을 보내는 경우 (특정 다수인에게 전송)
브로드캐스트: 같은 네트워크에 있는 모든 호스트에게 패킷을 보내는 방식 (불특정 다수인에게)
애니캐스트: 수신자들을 하나의 그룹으로 나타낸 주소를 사용하여, 그룹 내에서 가장 가까운 호스트에게만 전송 방식
IPv4 | IPv6 |
패킷의 크기 64byte로 고정 | 패킷의 크기: 임의로 큰 크기의 패킷을 주고 받을 수 있다. |
주소의 길이: 32bit, 표시방법: 8bit 씩 4부분, 10진수 표기 |
주소의 길이: 128bit 표시방법: 16bit 씩 8부분 16진수 표기 |
헤드 체크섬 필드 있음 | 없음 |
IP 주소 관리 방식
- 서브네팅: 관리의 효율성을 위해 하나의 큰 네트워크를 몇개의 작은 논리적인 네트워크로 분할하여 사용하는 방식
- 슈퍼네팅: 부족한 IP를 효율적으로 사용하기 위해 여러개의 C클래스 주소를 묶어 하나의 네트워크로 구성하는 방식
- CIDR: 클래스별로 IP주소를 구분하지 않고 네트워크 주소 범위를 자유롭게 지정할 수 있도록 하여 운영의 융통성을 제공하는 방법
- IP Alias: 하나의 NIC(Network Interface Card)에 여러 개의 IP 주소를 할당하는 방식
IP 주소 고갈 해결 : IPv6, NAT, DHCP
- IPv6
- NAT: 사설 IP 주소 <=> 공용 IP주소 변환. 인터넷의 공용 IP 주소를 절약할 수 있게 하며, 인터넷과 연결되는 사용자들의 고유한 사설망을 침입자들로부터 보호
- DHCP: IP 주소를 인터넷 서비스 제공자가 관리 할당하며, 컴퓨터가 네트워크의 다른 장소에 접속되었을 때 자동으로 새로운 IP주소를 보내줄 수 있게 함
경로배정 프로토콜
내부라우팅 프로토콜
- RIP(Routing Information Protocol) : 최초의 라우팅 프로토콜
거리벡터 라우팅 알고리즘에 근거한 분산 라우팅 방식
최대 홉카운트는 15 (정처기 빈출)
소규모 네트워크에 적합
최단 경로 탐색에는 Bellman-Ford 알고리즘 사용
- OSPF(Open Shortest Path First) : RIP 단점을 보완
각 라우터는 링크의 상태 변화가 있는 경우에만 변화의 내용을 모든 라우터에게 Broadcast 함으로서 갱신된 상태 정보를 다른 라우터와 공유
링크 상태 알고리즘 사용
외부라우팅 프로토콜
- BGP (Border Gateway Protocol)
참고
- '컴퓨터일반 달달노트' 박태순 이성행 공저
- '컴퓨터일반 기출문제집' 박미진 편저