본문 바로가기

네트워크

01_소켓

01_소켓


- 소켓이란 IP address와 Port 넘버가 합쳐진, 네트워크 상에서 서버와 클라이언트가 통신을 할 수 있도록 해주는 소프트웨어 장치입니다.


소켓의 종류

1. 연결형 스트림 소켓 ( SOCK_STREAM )

- 연결형 스트림 소켓은 두 개의 시스템이 연결된 다음 서로 데이터를 주고 받기 시작하여 연결된 상태의 데이터 주고 받기가 끝난 다음 연결을 끊게 되는 형식으로 TCP 프로토콜을 기본으로 합니다.

- 오류나 패킷의 순서에 특별히 신경 쓸 필요가 없으며 안정적이라고 할 수 있습니다. 그래서 HTTP, FTP 등과 같은 많은 프로토콜이 TCP를 기본으로 하고 있습니다.


< TCP >

출처 : http://gkflqkfl.tistory.com/174


2. 비연결형 데이터그램 소켓 ( SOCK_DGRAM )

- 비연결형 데이터그램 소켓은 UDP 프로토콜을 기본으로 하고 있으며, 명시적으로 서로 연결되어 있지 않은 상태로 데이터를 주고 받는 형태를 취합니다.

- 서로 연결을 하거나 해제하는 과정이 없어 빠르기 때문에 신뢰성보다는 빠르기가 중요한 큰 용량의 데이터보단 소량의 데이터를 전송할 때 쓰입니다.


< UDP >

출처 : http://gkflqkfl.tistory.com/174


네트워크 계층구조


OSI 7 Layer

표준화 이유

- 표준화가 되어 있지 않다면, 하나의 네트워크 관련 프로그램을 개발하기 위해 프로그램 개발자는 인터페이스부터 프로토콜 처리, 네트워크 카드 제어까지 모든 제반 사항들을 프로그램에 포함 시켜야 합니다. 따라서 위와 같은 불편함과 비효율성을 해결하기 위한 방법으로 표준화/모듈화가 필요하게 되었습니다.

Application 계층( 7 계층 ) - 사용자 인터페이스 / 응용 프로그램

Presentation 계층( 6 계층 ) - 테이터 포맷 / 암호화

Session( 5 계층 ) - 연결 유지

Transport( 4 계층 ) - 패킷 생성 / 패킷 오류 관리

Network( 3 계층 ) - 논리적 주소 관리 / 경로 설정

Data Link( 2 계층 ) - 물리적 주소 관리

Physical( 1 계층 ) - 네트워크의 물리적 구조( 케이블, 신호 방식 )


TCP / IP는 OSI 7 Layer의 구조를 4개의 계층으로 구분하고, OSI 7 Layer의 각 계층이 하는 일은 TCP/IP에서도 동일하게 적용됩니다.


Application Layer

- OSI 7 계층의 Application, Presentation, Session 계층의 역할을 담당하는 프로토콜로 FTP, Telnet, SMTP, DNS, SHCP 등이 있습니다,


Transport Layer

- OSI 7 계층의 Transport 계층의 역할을 담당하는 프로토콜로 TCP와 UDP가 있습니다.


Internet Layer

- OSI 7 계층의 Network 계층의 역할을 담당하는 프로토콜로 IP(Internet Protocol), ARP(Address Resolution Protocol), ICMP(Internet Control Message Protocol) 등이 있습니다.


Network Access Layer

- OSI 7계층의 DataLink, Physical 계층의 역할을 담당합니다.



'네트워크' 카테고리의 다른 글

04_P2P(peer to peer)  (0) 2018.03.25
03_쿠키  (0) 2018.03.11
02_2 웹 페이지를 전송하는 HTTP  (0) 2018.02.11
02_1 애플리케이션 계층  (0) 2018.02.11
00_서버와 클라이언트  (0) 2017.09.14