socket通信原理
socket通信原理是什么?让我们一起来了解下。
Socket指套接字,就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口。
Socket保证了不同计算机之间的通信,也就是网络通信。对于网站,通信模型是服务器与客户端之间的通信。两端都建立了一个Socket对象,然后通过Socket对象对数据进行传输。通常服务器处于一个无限循环,等待客户端的连接。
套接字是通信的基石,是支持TCP/IP协议的路通信的基本操作单元。可以将套接字看作不同主机间的进程进行双间通信的端点,它构成了单个主机内及整个网络间的编程界面。套接字存在于通信域中,通信域是为了处理一般的线程通过套接字通信而引进的一种抽象概念。套接字通常和同一个域中的套接字交换数据,各种进程使用这个相同的域互相之间用Internet协议簇来进行通信,套接字还有以下类型:
1、流套接字
流套接字用于提供面向连接、可靠的数据传输服务。该服务将保证数据能够实现无差错、无重复送,并按顺序接收。流套接字之所以能够实现可靠的数据服务,原因在于其使用了传输控制协议,即TCP协议。
2、数据报套接字
数据报套接字提供一种无连接的服务。该服务并不能保证数据传输的可靠性,数据有可能在传输过程中丢失或出现数据重复,且无法保证顺序地接收到数据。数据报套接字使用UDP协议进行数据的传输。由于数据报套接字不能保证数据传输的可靠性,对于有可能出现的数据丢失情况,需要在程序中做相应的处理 。
3、原始套接字
原始套接字与标准套接字(标准套接字指的是前面介绍的流套接字和数据报套接字)的区别在于:原始套接字可以读写内核没有处理的IP数据包,而流套接字只能读取TCP协议的数据,数据报套接字只能读取UDP协议的数据。因此,如果要访问其他协议发送的数据必须使用原始套接。
今天的分享就是这些,希望能帮助大家。
-
汽车仪表显示svs是什么故障?
汽车仪表显示svs是指发动机故障指示灯,当车辆打开点火钥匙后灯亮起,待车辆启动后才会熄灭,当发动机ecu检测到故障时,svs灯点亮,灯在车辆行驶过程中亮起则说明车辆发动机有故障...
问答查看全文>> -
赞美革命烈士的句子精选 赞美革命烈士的句子
1、不忘烈士抛忠骨,民族复兴中华魂!伟大不屈的灵魂,您的英明于事迹素年锦时菊花为中国献身的烈士们千百年的风雨都不可磨灭的是您们辉煌的功绩!2、回望历史烽烟狂,倭寇侵略我家乡;当...
句子查看全文>> -
倒车雷达和倒车影像有什么区别?
倒车雷达和倒车影像区别如下:1、倒车雷达是依靠回音探测距离并以通过不同频率的声音进行提示的,但是对声音的判断也必然会存在误差,而倒车影像系统,采用远红外线广角摄像装置,通过车内...
问答查看全文>> -
二手车需要交易税收吗?
二手车没有交易税,只有过户费,一般为200元至2000元,过户二手车需注意:1、办理二手车过户的必要性:办理二手车过户可以从法律上完成车辆所有权的转移,保障车辆来源的合法性,如...
问答查看全文>>
推荐
- 1外国名人爱情语录483
- 2正时皮带更换费用多少?435
- 3束发带哪个牌子好 束发带十大品牌排行榜282
- 4婚礼上对父母说的话433
- 5别克昂科威新款怎么样?390
- 6东南菱帅车多久更换一次火花塞?337
- 7地铁女神是什么意思 地铁女神是什么梗245
- 8减速让行标志可以用在哪?448