基于Socket的TCP/IP网络通讯模式研究

(整期优先)网络出版时间:2019-11-22
/ 2

基于Socket的TCP/IP网络通讯模式研究

孟惠敏

杭州华数传媒电视网络有限公司浙江杭州310000

摘要:此次研究主要是基于Socket探讨分析TCP/IP网络通讯模式,详细介绍了通信协议中的数据识别,论述Socket的类型和作用,并且深入研究和分析TCP/IP协议的并发响应通信模型、重复响应通信模型,以此实现网络通讯。

关键词:Socket;TCP/IP;网络通讯模式

在现代科学快速发展过程中,各行业领域都开始应用网络通讯,且在人们的生活中占据重要地位。通过网络通信服务能够促进数据传输,实时共享信息,从根本上提升现代人的生活质量。但是,互联网数据通信与传输并非随机传输,而是基于通信协议和机制实现。在现代互联网中,常用的网络通信协议与机制为Socket进程通信机制、TCP/IP网络通讯协议。尤其是TCP/IP网络通讯模式,是现代网络通信模式,实现客户端与服务器之间的通信,以此促进互联网通信的发展。所以,TCP/IP网络通讯模式有助于建立客户端服务器模型、传输网络设备的数据。

1、TCP/IP网络通讯与编程接口

1.1TCP/IP网络通讯

一般情况下,互联网通信模型共包括表示层、应用层、网络层、传输层以及物理层等。在网络层和传输层多应用TCP/IP协议,以此实现互联网传输控制与互联协议,还能够对网络设备与互联网接入、数据传输标准进行规范。

在互联网网络中,当存在两台计算机通信时,需要遵循TCP/IP通信协议,确保两台计算机之间建立关联度,之后实施数据通信。连接与数据传输过程都需要应用TCP/IP保温方式实现,计算机需要将通信数据打包为报文方式,并且利用通信数据与连接请求之间连接的路由网关和网络电缆线,实现网络设备之间的通信。但是需要注意的是,必须在路由中选择通信报文,并且确保TCP/IP协议的IP地址和识别字符串,将其传输到计算机中。下图为TCP/IP网络通讯协议报文模式。

在互联网所传输的数据帧中,包含不同协议的识别部分,其中TCP/IP协议的通信识别符包含在数据帧中。在不同数据帧中,将其他协议的识别数据去除之后,能够获取TCP/IP协议的通信报文。在该报文中,包含TCP协议的的识别数据,也包含IP协议的识别数据。在通信报文中,IP头数据包含计算机应用程序的IP协议版本,IP头首部长度,对IP协议进行标示。需要注意的是,通信报文中包含该条通信报文的源地址和目标地址,并且通过IP地址二进制标示在数据报文中。利用该报文的目的地址,能够在互联网数据中,按照路由器列表查找IP地址,并且自动选择传输通信数据的路由,将其发送到目标计算机中。将IP通信报文中的IP头数据去除之后,能够获取TVP协议的通信报文,但是TCP协议的头数据中,包含TCP通信的识别数据。在TCP协议的头数据中,包含验证信息、序列号和端口号,端口号数据对通信的作用比较大。在端口号数据中,包含通信计算机的数据发送方所包含的发送端口、数据接收方接收端口等,确保通信报文在明确目标计算机后,能够通过目的端口传输到应用程序中,以此实现两台计算机的信息通信。因此针对两台计算机来说,在实现同时通信时,通过TCP/IP协议所发送的通信数据,提供进行识别符和通信识别符,即目的端口和目的IP地址。识别符能够利用网络平台,将通信数据传输到目标计算机中,以此实现网络通信。

TCP/IP网间编程界面比较多,以Socket编程界面为主流。该编程接口能够有效处理网间网进程通信问题,且通过Unix系统能够提供Socket编程界面。在计算机平台上,通过动态链接库能够提供Socket的编程界面。所以,Socket编程界面与操作系统无关。在网络体系中,不同Socket均通过本地端口、本地地址和协议描述。但是,完整的Socket却需要由远程地址、远程端口、本地端口、本地地址和协议描述,并且通过操作系统进行优化配置。

图1TCP/IP网络通讯协议报文模式

1.2Socket

Socket是面向客户/服务器模型设计的,对于客户与服务器子程序之间的相互通信,提供有效的通信机制。Socket一般被称为“套接字”,利用Socket方式,能够使计算机中的应用程序将请求发送给网络,及时应答网络请求。Socket是一种独立于TCP/IP协议的通信报文,主要是在IP通信报文与计算机应用层之间的网络编程接口运行,包含流失套接字、数据包套接字、原始套接字。对于流失套接字来说,其能够为应用层提供有效的数传输服务,能够确保网络层传输报文向应用层无差别传输,确保严格按照顺序接受数据信息。数据报套接字能够提供无连接服务,数据包可以采用独立方式发送数据包,但是却无保障性措施。对于原始套接字来说,能够为应用层提供低层次访问,主要是针对ICMP和IP的网络协议。

2、基于Socket的TCP/IP网络通讯模式

TCP/IP通信协议的核心为传输层、物理接口层和网络层,然而其只能够将袁术数据提供给外界,而不能将用户服务接口提供给外界。开发人员无法对TCP/IP协议头直接编写,并通过其发送数据信息。但是借助于Socket,能够为TCP/IP通信协议提供网络编程接口,与协议相互独立。利用Socket所提供的网络编程接口,应用程序能够利用套接字读取IP通信报文,进一步获取计算机所发送的信息数据。因此,按照Socket和TCP/IP协议,能够实现计算机的通信框架。

常见的请求响应方案包括重复响应和并发响应。对于并发响应模型来说,处于等待状态的目标计算机,在源计算机发送数据之后,能够利用子进程对源计算机请求进行响应、父进程继续等待请求。对于重复响应模型来说,能够对请求列表进行维护,还能够根据先入先出队列原则,处理源计算机的请求。通过Socket建立并发响应模型时,首先需要建立新的Socket,赋予其本地地址和端口,之后让Socket监听端口,此时,源计算机能够发送端口号的IP协议和IP地址到目标计算机,目标计算机的Socket在对端口进行监听后,能够发现请求命令,之后产生新的Socket,处理源计算机所发送的通信请求,原有Socket能够持续监听端口。通过建立重复响应模型通信框架,在建立Socket时能够对端口请求进行监听,从而处理请求问题,在此过程中不会建立新的Socket进程,因此需要维护源计算机的请求列表,以此对应监听的请求。

3、结束语

综上所述,TCP/IP网络通讯模式能够为数据传输提供通信识别标示,确保通信数据能够在互联网中查询路由来源,到达目标端口和计算机。Socket能够实时监听目标端口,当发送数据到达之后,其能够将传输数据传达给应用层,利用互联网实现两台计算机的通信。

参考文献:

[1]卫冬生,伍浩坪,赵红恩,等.Modbus通讯的模式和参数设定对网络通讯速率影响的研究[J].电站系统工程,2019,35(01):61-64.

[2]汪野.基于TCP/IP网络通讯的风电变流器系统监控软件的设计与实现[D].东南大学,2018.

[3]王新忠,杨波.基于SOCKET的数据传输安全技术研究——以JAVASOCKET为例[J].科技广场,2016,26(07):72-77.

[4]杨立新.基于TCP/IP协议的数据通讯与图像数据传输方法[J].中国新通信,2016,18(12):136.

[5]范营营,田雨.基于Socket通讯多线程技术的工业无线数据服务软件设计[J].机械设计与制造工程,2016,45(03):61-64.