저번장에 소켓이 전화기와 비슷하다고 설명했다면, 이번에는 소켓을 만드는 방법을 알아본다.


다시 전화기로 가서..
내가 전화기를 들고 일본에 전화를 하면, 일본에선 받을것이고 나는 당연이 한국어로 말하고 일본에선 일본어로 말할것이다. 그러면, .. 서로 대화가 되지 않아, "무슨 소리를 지껄이는거야!" 라고 생각하고 끊어 버릴것이다.


그래서 서로 어떤 언어로 이야기 하자! 라고 규약을 만들었다. 네트워크 프로그래밍에선,  이 통신 규약을 "프로토콜(Protocol)" 이라 한다!


프로토콜의 종류로 치자면, .. 이미 개념 수준이 넘었기 때문에 제끼고, 일반적인 네트워크 프로그래밍에선 IPv4 인터넷 프로토콜(후에 IPv6 을 많이 사용할것이다)과 TCP, UDP를 많이 사용 한다고 알고만 있으면 된다.


전화를 걸때 전화번호와 어떤 언어로 말할지 정하듯이 소켓도 크게 두개의  프로토콜을 사용하는데, 전화를 걸기 위한 IPv4 인터넷 프로토콜과 데이터 전송 프로토콜인 TCP 나 UDP 프로토콜을 사용 한다.


자! 이제 소켓을 만든다면,
인터넷 프로토콜로는 IPv4 를 사용하고, 파일전송 프로토콜은 TCP를 사용하는 소켓을 만들꺼야 또는
인터넷 프로토콜로는 IPv4 를 사용하고, 파일전송 프로토콜은 UDP를 사용하는 소켓을 만들꺼야  라고 결정만 내리면 된다.


TCP와 UDP의 장단점은 .. 구글등에 검색하며 아주 많이 나오므로, 나는 오로지 개념만 정리하고 넘어간다.




신고
posted by 농사를 짓는 게임 프로그래머 최익필

댓글을 달아 주세요