본문 바로가기
728x90

IP5

Chapter2. Story 1. 소켓을 작성한다. 프로토콜 스택의 내부 구성 OS에 내장된 네트워크 제어용 소프트웨어(프로토콜 스택)와 네트워킁용 하드웨어(LAN 어댑터)가 네트워크 애플리케이션에서 받은 메시지를 서비스하는 동작을 알아보자. 네트워크를 통해 데이터를 송수신하는 컴퓨터는 다음과 같이 계층을 나눌 수 있다. 모든 네트워크를 통한 데이터 송수신은 네트워크 애플리케이션에서 부터 아래로 향한다. 그러면서 데이터 송/수신 등의 일을 하위 계층에 의뢰한다. TCP, UDP는 데이터 송수신을 담당한다. 애플리케이션에서 보낸 의뢰를 받아 송/수신 동작을 실행한다. 일반적인 데이터 송/수신은 TCP를 사용하며 DNS 서버에 대한 조회 같은 짧은 제어용 데이터는 UDP를 사용한다. IP는 패킷 송/수신 동작을 제어한다. 패킷을 통신 상대 까지 운반하는 것이.. 2022. 7. 24.
Story 4. 프로토콜 스택에 메시지 송신을 의뢰한다. 데이터 송/수신 동작의 개요 IP 주소를 찾으면 엑세스 대상 웹 서버에 메시지를 송신하기 위해 OS 내부에 있는 프로토콜 스택에 의뢰한다. 이 때, 송수신 하는 데이터는 디지털 데이터이며 웹 뿐만 아니라 네트워크를 사용하는 모든 애플리케이션의 공통 동작이다. DNS를 통해 IP를 찾는 것 또한 모든 네트워크에 연결된 애플리케이션에 공통 동작이다. 데이터를 송/수신하는 과정 역시 소켓 라이브러리를 사용한다. 이 과정은 복수의 함수를 결정된 순번대로 호출해야 하므로 조금 복잡하다. 이 과정을 도식화하면 다음과 같다. 위 그림에 존재하는, 클라이언트의 소켓과 서버 소켓을 연결하는 파이프를 만들기 위해선 양자를 파이프로 연결하는 동작이 필요하다. 이 파이프에 존재하는 두 출구를 소켓이라 한다. 서버의 소켓이 만.. 2022. 7. 13.
Story 3. 전 세계의 DNS 서버가 연대하다. DNS 서버의 기본 동작 DNS 서버의 기본적인 동작은 클라이언트에서 조회 메시지를 받고 조회 내용에 응답하는 형태다. 조회 메시지는 다음과 같은 정보를 포함한다. 이름 서버나 메일 배송 목적지(메일 주소에서 @ 뒷부분의 이름)와 같은 이름이다 클래스 네트워크의 종류를 나타낸다. 현재는 인터넷 외의 네트워크가 소멸되었으므로 항상 인터넷을 나타내는 'IN'이 값이 된다. 타입 이름에 어떤 타입의 정보가 지원되는 지를 나타낸다. 타입에 따라 클라이언트에 응답하는 정보의 내용이 달라진다. 대표적인 타입과 용도는 다음과 같다. 타입 용도 A IP 주소 조회 MX 메일 배송 목적지 조회 PTR IP 주소에서 이름 조사할 때 CNAME 이름에 닉네임(alias)을 붙일 때 NS DNS 서버의 IP 등록 SOA 도메.. 2022. 7. 10.
Story 02. 웹 서버의 IP 주소를 DNS 서버에 조회한다 IP 주소의 기본 브라우저는 생성한 메시지를 네트워크에 송출하는 기능을 제공하지 않는다. 따라서 이를 OS에 위임한다. 이 때, OS는 도메인명이 아닌 IP를 사용하므로 브라우저는 HTTP 메시지를 만든 후 도메인명을 통해 IP를 찾아야 한다. TCP/IP 네트워크는 서브넷이라는 작은 네트워크를 라우터로 연결해 전체 네트워크를 완성한다. 여기서의 서브넷은 허브에 몇 대의 PC가 접속된 것이다. IP는 네트워크 번호와 호스트 번호로 나뉘어져 있다. IP의 네트워크 번호는 서브넷에 할당되고, 호스트 번호는 컴퓨터에 할당된다. 실제 IP는 IPv4 기준으로 32비트이다. 이를 8비트(1바이트)씩 점으로 구분해 10진수로 표기한다(ex - 10.11.12.13). IP 주소 규칙은 오직 네트워크 번호와 호스트 .. 2022. 6. 30.
728x90