네트워크를 연결하는 프로토콜
프로토콜은 약속을 의미, 즉 의사소통을 위해 맞춰야 하는 것,
즉 네트워크를 연결하기 위한 규약을 의미
IP는 모래시계의 허리 부분을 이야기 하는 것과 같다.
- 고려해볼 점
a. 어떤 컴포넌트가 존재하는 가?
b. 컴포넌트들은 서로 어떻게 상호 작용하는가?
1-1. 계층형 아키텍처
Layering(계층화)를 통해 아키텍처 구현
[계층화의 장점]
[계층화의 단점]
여기서 port는 IP 내에서 애플리케이션 상호 구분(프로세스 구분)을 위해 사용하는 번호이다.
즉, IP 주소가 가리키는 PC에 접속할 수 있는 통로(채널)이다.
ex) ip가 국가라면 port는 국가에 속해있는 항구
port 번호
를 지정하는 법
-> 주로 사용하는 곳 내에서 port 번호를 정해 놓고 사용한다.
어떤 ip를 써야되는지 찾는 법
-> 정해진 ip사용을 하거나 서버 이름을 통해서 ip주소를 찾음
🙄 잠깐! 서버이름을 통해 ip주소를 어떻게 찾을 수 있지? 🙄
💡 DNS를 통해 IP 주소를 찾을 수 있다.
DNS
란?
서버 이름을 IP주소로 변환해주는 서비스
DNS 서버
: 서버 이름과 매칭된 IP 주소들을 저장하는 저장소
DNS resolution
: 서버 이름으로부터 IP를 알아내는 행동
⚡ DNS resolution의 과정
DNS resolution
을 보면 굉장히 많은 과정을 거친다는 것을 알 수 있다. 이런 과정을 간편하게 하기 위해 나온 것이 DNS Caching
이다.
DNS Caching
은 DNS 네임 서버가 한번 요청된 DNS 질의를 메모리에 저장하여 뒀다가 똑같은 질의에 대해 신속히 처리하는 기능이다.
DNS 정보
가 빈번한게 바뀌는 정보가 아니면 충분히 사용 가능하다.
ARP
프로토콜을 사용한다.❓ ARP
프로토콜이란?
소프트웨어 적으로 할당된 논리 주소인 IP주소를 실제적인 물리 주소인 MAC 주소로 바꾸어 주는 역할을 하는 주소해석 프로토콜을 의미
Network Gateway
는 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트이다.
IP를 통해 통신하는 과정으로 데이터 통신망에서 각 패킷이 라우터를 건너가는 양상을 비유적으로 표현한 Network이다.
hop
은 영어 뜻 자체로 건너뛰는 모습을 의미한다.Routing
이란 데이터 전송의 본질적인 부분이 아닌, 컨트롤의 영역이다. 즉, 내가 어떤 선택 가능한 경로들을 가지고 있는가를 의미한다.
Forwarding
이란 데이터 전송의 본질적인 영역으로 목적지에 따라서 골라 보내기 때문에 Switching
이라고도 한다. 즉, 선택 가능한 경로 중 하나를 골라서 보내는 것을 의미한다.
Domain
은 서로 다른 관리 주체의 네트워크이다.
Latency
는 송신자가 보낸 데이터가 얼마만에 수신자에게 도달하는 지를 의미한다.
jitter
는 Latency의 변화 정도를 의미한다.
이때, Latency
가 크면 반응이 늦게 온다는 느낌을 주고 jitter
가 오면 자꾸 튄다는 느낌을 준다.