socket网络编程

Linux 中的网络编程通过socket实现,socket是一种文件描述符,其类型有:

(1)流式套接字(SOCK_STREAM)可以提供可靠的面向连接的通讯流,使用TCP协议。TCP协议保证了数据传输的正确性和顺序性。

(2)数据报套接字(SOCK_DGRAM)数据报套接字定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证可靠、无差错,使用数据报文协议UDP。

(3)原始套接字(SOCK_RAW)允许使用IP协议,主要用于新的网络协议的测试。

 

TCP网络程序设计:

socket网络编程_第1张图片

UDP网络程序设计:

(第二张流程图为啥传不上呢疑问

口述如下:

服务器端:1、创建一个socket,用socket();

                  2、绑定IP地址、端口等信息到socket上,用函数bind();

                  3、循环接收数据,用recvfrom()

                  4、关闭网络连接 close()

客户端:    1、创建一个socket, 用socket()函数;

                   2、绑定IP地址、端口等信息到socket上,用bind()函数, 这步可不选

                   3、设置服务器的IP地址、端口等属性

                   4、发送数据,用函数sendto();

                   5、关闭网络连接  close().

 

 

 

 

 

你可能感兴趣的:(socket网络编程)