네트워크의 기본 구조
-
네트워크는 노드와 간선으로 이루어진 자료구조라는 점에서 그래프 형태라고 할 수 있음

-
네트워크 토폴로지(Network Topology) : 네트워크 상에서 노드와 노드 사이의 연결 구조
노드가 어떻게 연결되고 배치되느냐에 따라 망형, 트리형, 링형 등의 유형으로 분류

-
호스트(Host)
네트워크의 가장자리에 위치하면서 네트워크를 통해 주고받는 정보를 최초로 송신하고 수신하는 노드. 우리가 흔히 접하는 대부분의 네트워크 기기
- 클라이언트(Client) : **요청(Request)**을 보내는 호스트
- 서버(Server) : **응답(Response)**을 보내는 호스트
- EX : 웹 브라우저를 통해 구글 홈페이지에 접속한 경우 → 노트북과 구글의 서버 컴퓨터가 각각 호스트로서 정보를 주고받은 것
- 노트북이 구글의 서버 컴퓨터에게 웹 페이지를 가져다 달라는 요청 전송
- 구글의 서버 컴퓨터가 노트북에게 웹 페이지로 응답
- 중간 노드 : 가장자리에 위치한 호스트가 주고받은 정보들을 원하는 수신지까지 안정적으로 전송하는 역할
LAN과 WAN
전 세계에 여러 개의 네트워크로 나뉘어져 있음 : 규모에 따라 LAN과 WAN으로 구분
- LAN(Local Area Network) : 근거리 네트워크
- 비교적 가까운 거리(가정, 기업)를 연결하는 한정된 공간에서의 네트워크
- 공유기를 통해 모든 네트워크 기기가 통신하고 있다면, LAN이 공유기를 기준으로 구축되었다고 할 수 있음
- 즉, 해당 공유기와 연결된 네트워크 기기들은 모두 같은 네트워크(LAN)에 속해 있다고 인식
- WAN(Wide Area Network) : 원거리 네트워크
- WAN을 통해 LAN 간 통신이 이뤄짐
- 인터넷을 가능하게 만드는 네트워크
- **ISP(Internet Service Provider)**라는 인터넷 서비스 업체가 구축하고 관리
패킷 교환 네트워크
네트워크를 통해 주고받는 데이터는 한 번에 송수신되지 않고, 여러 데이터로 쪼개져서 송수신이 이뤄짐
- 패킷(Packet) : 네트워크를 통해 송수신되는 데이터의 단위
- 오늘날의 네트워크는 패킷 단위로 주고받는 정보를 쪼개서 송수신하고 수신지에서 재조립하며 패킷을 주고받는 패킷 교환 네트워크가 대부분
- 구성 : **페이로드(Payload)**와 헤더(Header) + 트레일러(Trailer)
- 페이로드 : 패킷에서 송수신하고자 하는 데이터
- 헤더, 트레일러 : 패킷에 추가되는 부가 정보
주소의 개념과 전송 방식
네트워크 상의 두 호스트가 패킷을 주고 받으려면(정보를 주고 받으려면), 서로를 특정할 수 있는 정보(주소)가 필요
-
주소(Address) : 패킷의 헤더에 명시되는 정보
EX : IP주소, MAC주소
-
주소를 바탕으로 다양한 수신지 유형을 지정해 패킷을 송신 가능
- 유니캐스트(Unicast) : 송신지와 수신지가 일대일로 메시지를 주고받는 전송 방식(수신지를 특정 호스트 하나로 지정)
- 브로드캐스트(Broadcast) : 네트워크상의 모든 호스트에게 메시지를 전송하는 방식(네트워크 내 모든 호스트로 수신지를 지정)
- 브로드캐스트 도메인(Broadcast Domain) : 브로드캐스트가 전송되는 범위
호스트가 같은 브로드캐스트 도메인에 속해 있다면, 같은 LAN에 속해 있다고 간주

이 밖에도 다양한 송수신 방식이 존재하지만, 유니캐스트와 브로드캐스트가 가장 자주 언급됨
두 호스트가 패킷을 주고받는 과정
네트워크 내의 호스트는 서로가 주고받을 내용(패킷)을 이해할 수 있어야 하고, 이를 올바르게 주고받을 수 있어야 함
프로토콜
서로 다른 LAN에 속한 두 호스트가 패킷을 주고받을 때는 네트워크 장비를 거치게 됨. 이때 호스트들과 네트워크 장비들이 서로의 패킷을 이해하기 위해서는 정해진 규칙(프로토콜)이 필요