소켓프로그래밍

개요 보통 자주 사용하는 네트워크 프로토콜 이라고 한다면, UDP/TCP ,SSL, HTTP 등, 다양한 프로토콜이 존재합니다. 하지만 4계층인 Transport Layer 에서 주로 사용하는 프로토콜은 UDP와 TCP가 존재합니다. 이 둘은 확연한 장/단점이 있기에, 사용 용도에 따라 취사 선택하여 사용하곤 합니다. 지난 포스팅에서 보았듯이, UDP는 stateless 하기 때문에, 상대방과 연결을 맺지 않는 반면 TCP는 stateful하기 때문에, 상대방과의 연결을 맺고 ( 터널을 뚫고 ) 직접 통신을 진행합니다. 이를 3-way-handshaking 이라고 합니다. 흐름도 소켓 프로그래밍의 절차도 동일합니다. 단지 네트워크 프로토콜을 프로그래밍 언어로 구현한 라이브러리인데, 다르다면 그게 더 이상..
소켓이란? 소켓은 특정한 파이프의 끝, 파이프 이음쇠 또는 위생 기구를 수용하기 위해 확장한 것으로, 또 다른 파이프의 끝이나 파이프 이음쇠을 가리킨다. 또한 소켓(socket)은 통신선 또는 전기선, 전구 따위를 끼워 넣어 연결선과 접속하게 하는 연결기구를 가리킨다. 일상생활에서 소켓은 자주 접할 수 있습니다. 콘센트 플러그도 소켓, 전구의 소켓을 갈아끼운다. 등의 표현을 심심찮게 접할 수 있습니다. 위의 정의와 같이 소켓은 무언가 연결하기 위한 기구를 뜻합니다. 컴퓨터 언어에서도 다음과 같이 일상 생활의 용어를 종종 차용하곤 합니다. 그렇다면 소켓 프로그래밍은 무엇을 위한 프로그래밍일까요? 컴퓨터 네트워크는 layered architecture 를 사용하고 있습니다. 레퍼런스를 위한 OSI 7 모델이..
hyunw9
'소켓프로그래밍' 태그의 글 목록