1장. |
목차 |
목표 |
1. TCP/IP 트로토콜 개요 2. 소켓 개념 3. 윈도우 소켓(윈속) |
TCP/IP 프로토콜의 동작원리 소켓의 기본개념 이해 윈속의 역사와 특징 윈속 프로그램 작성, 실행과정 이해 |
TCP/IP 프로토콜 구조
응용 계층 | Applecation | Telnet, FTP, HTTP |
전송 계층 | Transport | TCP, UDP |
인터넷 계층 | Network | IP |
네트워크 계층 | Data link | 장치 드라이버 네트워키 하드웨어 |
네트워크 계층 (Network access layer)
- 물리적 네트워크를 통한 실제 데이터 송수신을 담당.
- 하드웨어적으로 정의 된 물리주소(physical address)를 사용하여 통신.
구성 요소
- 네트워크 하드웨어 : 물리적인 신호를 처리해 데이터를 송수신.
- 장치 드라이버 : 운영체제 제공
* 물리주소 : 네트워크 방식에 따라 다르며 일반적으로 상호 호환이 되지 않는다.
ex) 이더넷은 48비트 물리 주소 사용, 윈도우에서는 ipconfig/all 명령어로 확인 가능
인터넷 계층 (Internet layer)
- 네트워크 접근 계층의 도움을 받아 데이터를 목적지 호스트까지 전달.
- 하드웨어적으로 정의 된 물리주소 대신 소프트웨어 적으로 정의 된 논리 주소인 IP 주소를 사용
* IP주소(Internet Protocol address)
- 전세계적으로 유일성을 보장.
- 물지주소와 무관한 단일 주소 지정방식. // 인터-네트워크(Ineter-Network)구성을 가능하게 한다.
* 인터-네트워크(Ineter-Network)
- 서로 다른 기술에 기반한 네트워크를 연결하여 좀더 큰 규모의 네트워크
* 인터넷 : 전세게적 네트워크
->IP주소의 유일성과 하드웨어 독립성 때문에 TCP/IP 프로토콜이 다양한 네트워크 기술과 하드웨어 작동이 가능하여 인터넷을 구성할 수 있게 하였다.
라우팅(Routing)
- 전송 경로를 결정하고 그에 따라 데이터를 전달하는 절차
- 데이터를 목적지까지 전달하는 일련의 작업
- 라우팅에 필요한 정보를 수집하는 작업과
라우팅 정보를 기초로 실제 데이터를 전달하는 작업을 포함
라우터(Router)
- 라우팅을 담당하는 전용 장비.
- 서로 다른 네트워크에 연결된 호스트가 통신할 수 있다.
전송 계층(Transport layer)
- 최종 통신 목적지를 지정하고 오류없이 데이터를 전송하는 역할.
- 전송계층에서 프로세스를 지정하는 일종의 주소(포트번호)를 사용.
- 데이터 손실 또는 손상 검출(잘못된 데이터가 목적지에 전달 되는 일을 방지)
- TCP/IP 프로토콜 -> TCP, UDP 가 있다.
TCP |
UDP |
연결형 프로토콜 - 연결 설정 후 통신 가능 |
비연결형 프로토콜 - 연결 설정 없이 통신 가능 |
신뢰성 있는 데이터 전송 - 데이터를 재전송함 |
신뢰성 없는 데이터 전송 - 데이터를 재전송 하지 않는다. |
일대일 통신(Unicast) |
일대일 통신(Unicast) 일대다 통신(Broadcast, Multicast) |
데이터 경계 구분 안함 - 바이트스트림(Byte-stream)서비스 |
데이터 경계 구분함 - 데이터그램(Datagram) 서비스 |
응용계층(Application layer)
- 전송계층을 기반으로 한 다수의 프로토콜(Telnet, FTP, HTTP, SMTP)과 이 프로토콜을 사용하는 응용프로토콜을 포함
'서버 공부 > TCP IP 윈도우 소켓 프로그래밍' 카테고리의 다른 글
I/O멀티 플레싱 서버 Select() 함수 (0) | 2022.03.01 |
---|---|
멀티 스레드 서버 (0) | 2022.02.09 |
멀티 프로세스 서버 (0) | 2022.02.02 |
다중 접속 서버 (0) | 2022.02.02 |
TCP / UDP 차이 (0) | 2022.02.02 |