Web, HTTP 모두 인터넷 네트워크망에 기반하여 동작한다. 따라서, HTTP 학습을 위한 사전 기본 학습의 개념으로 인터넷 통신, IP, TCP, UDP, PORT, DNS에 대해 간단하게 알아보자. 인터넷에서 컴퓨터 간 통신 만약 클라이언트와 서버가 바로 옆에 붙어 있다면 단순하게 케이블을 연결해 요청을 보내고 응답을 받는 방식을 사용하면 될 것이다. 하지만, 둘이 멀리 떨어져 있어 인터넷 망을 거쳐야 한다면 중간에 수많은 노드(서버)를 거쳐야 한다. 이때 어떤 규칙을 사용해서 넘어가게 될까? 이를 이해하기 위해 IP에 대한 학습이 필요하다. IP(Internet Protocol) 복잡한 인터넷 망에서 데이터(메시지)를 보내기 위해서는 최소한의 규칙이 필요하다. 이때 IP 주소를 사용하게 되는데, ..
Protocol(프로토콜)이란, 컴퓨터 상호간의 데이터 송수신에 필요한 통신규약이며 소켓을 생성할 때 기본적인 프로토콜을 지정해야 한다. #include int socket(int domain, int type, int protocol); domain : 소켓이 사용할 프로토콜 체계(Protocol Family) 정보 전달 type : 소켓의 데이터 전송방식에 대한 정보 전달 protocol : 두 컴퓨터간 통신에 사용되는 프로토콜 정보 전달 →모두 프로토콜 정보와 관련있다. Protocol Family(프로토콜 체계) 프로토콜도 그 종류에 따라서 부류가 나뉘는데, 그 부류를 가리켜 프로토콜 체계라 한다. int domain에 들어가는 부분이다. Type(소켓의 타입) 데이터 전송 방식을 의미한다. 소켓..
다양한 application의 구조에 대하여 알아보자. 1. Server-Client Server 서버는 항상 켜져 있는 호스트(always-on Host)이다. 모든 서버는 호스트이지만, 모든 호스트가 서버인 것은 아니다. → 네트워크에 연결이 확립된 모든 장치는 호스트의 자격이 있는 반면, 다른 장치(클라이언트)로부터의 연결을 수락하는 호스트만 서버가 될 수 있다. 영구적으로 고정된 주소 값을 가지며, 이를 IP address라 한다. 각 Server를 IP 주소로 구분한다. Client 서버와 통신한다. 클라이언트 간에 직접 통신하진 않는다. 유동 IP(dynamic IP) 주소를 가진다.(고정 IP를 사용할 수도 있다.) → Internet을 사용할 시점에 받아온다. 항상 연결되어 있지 않고, 간..