본문 바로가기
카테고리 없음

네트워크 프로그래밍 3주차 복습

by 할 수 있다 ! 2023. 6. 6.

1. 네트워크 프로토콜이란 ?

 

프로토콜이란 대화에 필요한 통신 규약에 의미한다. 

쉽게 말해서 프로토콜은 약속이다. 서로 데이터를 주고 받기 위해서 정의한 약속이다. 

 

2. 소켓함수의 인자 중에서 프로토콜 체계의 역할 및 종류를 쓰시오. 

 

PF_INET IPV4 인터넷 프로토콜 체계             PF_PACKET 

PF_INET6 IPV6 인터넷 프로토콜을 체계       LOW LEVEL 소켓을 위한 프로토콜 체계

PF_LOCAL 로컬 통신을 위한 unix 프로토콜 체계   PF_IPX IPX 노벨 프로토콜 체계 

 

3. 소켓의 타입 중에서 연결지향형 소켓의 특징을 설명하시오.

 

중간에 데이터가 소멸되지 않구 목적지로 전송된다. 

전송 데이터가 순서대로 수신된다. 

전송되는 데이터의 경계가 존재하지 않는다. 

 

소켓은 반드시 1대1 구조이다.

 

4. 소켓의 타입 중에서 비 연결지향형 소켓의 특징을 설명하시오.

 

전송된 순서에 상관없이 가장 빠른 전송을 지향한다. 

전송된 데이터는 손실의 우려가 있고 파손의 우려가 된다. 

전송되는 데이터의 경계가 존재한다. 

한번에 전송 할 수 있는 데이터의 크기가 제한된다. 

 

 

5. IPv6 인터넷 프로토콜 체계에서 동작하는 연결지향형 데이터 전송소켓을 생성하는 소켓의 생성문을 적어보시오.

 

hello_server.c -> tcp_server.c 변경 사항 없음. 

hello_client.c -> tcp_client.c read 함수의 전송되는 데이터의 경계가 존재하지 않는다. 

 

6. tcp_client.c 소스를 작성하고 컴파일하여 실행하시오.

실행 결과 => root @ my linux : ./tcp ip # gcc tcp _ client.c 

root @ my _ linux : ./tcp ip # ./hclient 127.0.0.1 9190 

message from server : hello world ! 

function read call count : 13 

 

7. 문제 6의 결과를 통하여 연결지향형 소켓의 데이터의 경계가 존재하지 않는다는 것을 설명하시오.

 

int tcp _ socket = socket ( PF_INET , SOCK _STREAM , IP PORTO _ TCP );

int udp _ socket = socket ( PF _INET , SOCK _ DGRAM , IP PROTO _ UDP ) ;