목록전체 글 (23)
layered
3-1 소켓에 할당되는 IP 주소와 PORT 번호 인터넷 주소 Internet Protocol은 인터넷 상에서 데이터를 송수신할 목적으로 컴퓨터에게 부여하는 값이다. 즉, 네트워크 상에서 컴퓨터를 잘 찾아가기 위한 주소라고 할 수 있다. IP 주소는 IPv4와 IPv6로 나뉘는데 둘의 차이점은 사용하는 바이트 수이다. 원래 사용하는 것은 IPv4인데, 인터넷이 워낙 규모가 커지다 보니 4바이트로는 한계가 있어 16바이트의 IPv6가 점점 도입되는 추세이다. IPv4 기준으로 IP 주소는 네트워크 주소와 호스트 주소로 나뉜다. 그래서 데이터는 네트워크(= 라우터)에 먼저 전송되고, 이 라우터에서 호스트로 전송하는 것이다. 메모 아주 간단하게 말하면 네트워크는 호스트와 라우터들의 집합이다. 호스트는 서버나 ..
프로토콜 Protocol 컴퓨터 상호간의 대화에 필요한 통신규약. 이렇게 말하면 조금 모호한 면이 있을 것이다. 간단하게 다음과 같은 상황이 있다고 생각해 보자. 컴퓨터들이 서로 통신을 하려고 한다. 몇 가지 물음표가 떠오를 것이다. What is communicated How it is communicated When it is communicated 이런 것들을 상호간에 정하는 게 바로 프로토콜이다! 이제 소켓을 생성하는 함수를 다시 살펴보자. int socket(int domain, int type, int protocol); SOCKET socket(int af, int type, int procotol); domain, af 소켓이 사용할 프로토콜 체계(Protocol Family) 정보를 전달..
과제하면서 공부하는 거라 틀린 내용 있을 수 있음.. 소켓 Socket 서로 다른 두 컴퓨터가 데이터를 주고받을 수 있게 하려면 어떻게 해야 할까? 일단 두 컴퓨터를 어떤 식으로든 연결해 줘야 하는데 이는 인터넷이라는 거대한 네트워크가 있으므로 해결이 된다. 그리고 이를 기반으로 데이터를 송수신하는 소프트웨어적인 방법을 고민해야 하는데, 이것도 운영체제에서 소켓이라는 것을 제공하므로 쉽게 풀린다. 그냥 네트워크 상에서 데이터를 주고받기 위해 필요한 것이 소켓이다! 정도로 이해하면 될 것 같다. 참고) 소켓이라는 표현은 전기를 공급받기 위해 소켓을 꽂는 것처럼, 데이터의 송수신을 위해 인터넷이라는 네트워크 망에 연결한다는 의미이다. 또는 네트워크를 통한 두 컴퓨터의 연결 자체를 뜻하기도 한다. 전화 받는 ..