socket通信原理
socket通信原理是什么?让我们一起来了解下。
Socket指套接字,就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口。
Socket保证了不同计算机之间的通信,也就是网络通信。对于网站,通信模型是服务器与客户端之间的通信。两端都建立了一个Socket对象,然后通过Socket对象对数据进行传输。通常服务器处于一个无限循环,等待客户端的连接。
套接字是通信的基石,是支持TCP/IP协议的路通信的基本操作单元。可以将套接字看作不同主机间的进程进行双间通信的端点,它构成了单个主机内及整个网络间的编程界面。套接字存在于通信域中,通信域是为了处理一般的线程通过套接字通信而引进的一种抽象概念。套接字通常和同一个域中的套接字交换数据,各种进程使用这个相同的域互相之间用Inter协议簇来进行通信,套接字还有以下类型
1、流套接字
流套接字用于提供面向连接、可靠的数据传输服务。该服务将保证数据能够实现无差错、无重复送,并按顺序接收。流套接字之所以能够实现可靠的数据服务,原因在于其使用了传输控制协议,即TCP协议。
2、数据报套接字
数据报套接字提供一种无连接的服务。该服务并不能保证数据传输的可靠性,数据有可能在传输过程中丢失或出现数据重复,且无法保证顺序地接收到数据。数据报套接字使用UDP协议进行数据的传输。由于数据报套接字不能保证数据传输的可靠性,对于有可能出现的数据丢失情况,需要在程序中做相应的处理 。
3、原始套接字
原始套接字与标准套接字(标准套接字指的是前面介绍的流套接字和数据报套接字)的区别在于原始套接字可以读写内核没有处理的IP数据包,而流套接字只能读取TCP协议的数据,数据报套接字只能读取UDP协议的数据。,如果要访问其他协议发送的数据必须使用原始套接。
今天的分享就是这些,希望能帮助大家。
奇闻趣事
- 九种不祥之物千万不能放家里
- 红衣小男孩真实事件凶手,剧本杀红衣小男孩有
- 从头吓到尾的恐怖电影 恐怖片从头到尾惊险刺激
- 民间鬼故事短篇超吓人 民间鬼故事大全300鬼故事
- 15个吓死人校园鬼故事短篇 吓死人的校园鬼故事
- 世界未解之谜大全集 世界未解之谜大全集在线观
- 霍金的30秒的死亡过程 霍金的30秒的死亡过程是什
- 床头放什么鬼不敢靠近 床头放什么辟邪最好
- 陕西灵异事件真实故事 陕西灵异事件真实故事有
- 封门村为什么成为中国第一鬼村 封门村人都搬哪
- 霍金是怎么瘫痪的 霍金是如何瘫痪的
- 狗看见鬼有几种表现 狗看到鬼后会不会叫
- 巨蟒峰灵异事件 巨蟒峰位于哪里
- 康乃狄克州鬼屋事件 康乃狄格州的鬼屋事件
- 世界奇闻怪事百年蛇 世界十大奇怪的蛇
- 一位阴阳先生临死前忠告 阴阳先生会看要死的人