네트워크로 데이터를 주고 받으려면 송신 - 수신 측이 서로를 인지하고 있어야함 케이블이나 컴퓨터 내부는 그저 데이터가 흐를뿐 어느 부분이 목적지 데이터인지 어느 부분이 신호 데이터인지 알 수가 없음 이러한 것을 지정한 것이 프로토콜
프로토콜이 같으면 서로 다른 기종의 기기에서도 통신이 가능
LAN : 이더넷 프로토콜
인터넷 : IP, TCP, UDP
메일수신 : POP
메일송신 : SMTP
웹사이트 : HTTP, HTTPS
프로토콜에는 헤더와 페이로드가 존재 헤더는 목적지, 종류 등을 나타내고 페이로드에는 보내려는 데이터 그자체가 들어가있음
ex) 하위 계층 프로토콜의 페이로드에 상위 계층의 헤더와 페이로더를 포함시키면 해당 계층은 자신의 헤더에 따른 정보로 상위 네트워크에 헤더 ,페이로드를 전달
[7] 응용 (Application) - SMTP, POP, HTTP, DNS, FTP
[6] 표현 (Presentation) - SMTP, FTP, 텔넷
[5] 세션 (session) - TLS
[4] 전송 (Transfer) - UDP, TCP
[3] 네트워크 (Network) - IP, ARP
[2] 데이터 (data) - IEEE
[1] 물리 (Physical) - LAN, 광섬유 등
송신을 할 때는 7 -> 1 / 수신을 할 때는 1 -> 7
[4] 응용
[3] 전송
[2] 인터넷
[1] 네트워크 인터페이스 계층
IP는 TCP와 UDP, HTTP 등의 기본 프로토콜로 정리하자면 아래와 같은 차이가 있음
TCP/IP에서 출발지나 목적지를 식별하는 식별자료 사용되는 데이터
IPv4 -> 32비트 체계로 약 43억개의 주소를 사용 가능 (물론 43개 모두 쓸 수 있는 건 아님)
IP주소 중 인터넷 주소로 활용할 수 있는 것을 Global IP주소라고 함
이 주소를 가진 기기는 인터넷상 하나뿐이므로 주소가 부여되면 전세계 모든 기기들과 통신이 가능함
인터넷에 연결되지 않았을 때 쓰는 주소는 LAN에서 사용되는 Local IP 주소임
IPv4의 고갈로 IPv6가 나옴 (IPv4는 32비트, IPv6는 128비트)
IPv6가 부족할 일은 존재하지 않지만 두 IP간의 호환성은 존재하지 않으므로 IPv6로 인터넷에 연결하려면 IPv6와 호환되는 앱이나 서비스를 이용 해야만함
현재 둘 모두는 혼재되어 사용되고 있고 IPv4가 금지인 것도 아님 현재는 주로 IPv4 기반으로 동작하고 있음
Media Access Control로 컴퓨터, 스마트폰, IoT에 들어가며 전 세계가 공유하는 고유코드
MAC주소의 상위 3바이트 부분, IEEE에서 각 기업마다 고유번호를 부여하며 대기업의 경우 복수의 벤더 코드를 갖는 경우가 있음
그러나 요즘은 기기의 특정을 막기 위해 랜덤한 Mac주소를 발급하여 사용하도록 설정하기도함
Address Resolution Protocol로서 IP주소에서 해당 장비의 MAC주소를 알아내는 것
ARP는 MAC 주소를 알고자 하는 IP 주소 정보를 LAN에 대상을 지정하지 않고 전송
-> LAN의 모든 장치에 대상을 지정하지 않고 패킷을 전송하는 것을 브로드캐스트 라고함
브로드패킷으로 장비가 받으면 자신의 MAC주소를 반환 이것이 ARP의 기본 동작 방식
하지만 요즘은 그냥 자신의 허브나 라우터에 IP주소와 MAC주소의 대응표를 만들어둘 때가 많음
잘 알려진 포트와 이용되는 프로토콜 및 서비스
20: FTP (데이터) - 클라 - 서버 파일 송수신
21: FTP (프로토콜) - 송수신시 서버에 로그인처리
22: SSH - 암호화 통신 원격 로그인
23: 텔넷 - 원격 로그인 (비추천)
25: SMTP - 메일서버에 이메일 보냄
443: HTTPS - 암호화통신으로 세션이 보호된 HTTP
123: NTP - 컴퓨터 내부시계와 표준시간을 동기화
현재 인터넷의 핵심이라고 할 수도 있는 장비로서 IP를 보고 목적지가 LAN인지 아닌지를 판단
라우터들끼리도 서로 물어가며
라우터의 기본 기능은 들어오는 패킷을 확인하여 자신이 관리하는 LAN들어올 땐 받아들이고 그렇지 않으면 다른 라우터로 전달하는 것 -> 방대한 양의 패킷을 처리하려면 목적지 뿐만 아니라 어떤 경유를 통해 도달하는지에 대해 지정해줘야함 이것이 라우팅
즉, 통신 경로를 제어하는 기능
라우터가 판단할 수 없는 미지의 패킷을 처리하는 곳
하나의 네트워크를 여러 세그먼트로 나누는 것을 서브넷이라고 함
DHCP (Dynamic Host Configuration Protocol) - IP주소를 자동으로 할당하는 프로토콜