什么是socket?socket就是逻辑上的通信终端。
一下文章摘自:nokia 开发者论坛 http://www.developer.nokia.com/Community/Wiki/使用Socket_API感觉说的言简意赅,所以转载!● 什么是socket? 那么什么是socket呢? 用一句引自伯克利(Berkeley)UNIX关于socket实现的经典定义来回答就是“socket就是通信终端”。● 那究竟是
一下文章摘自:nokia 开发者论坛 http://www.developer.nokia.com/Community/Wiki/使用Socket_API
感觉说的言简意赅,所以转载!
● 什么是socket?
那么什么是socket呢? 用一句引自伯克利(Berkeley)UNIX关于socket实现的经典定义来回答就是“socket就是通信终端”。
● 那究竟是什么意思呢?
一个socket代表了一条通信‘通道’逻辑上的终端。而实际上讲,socket是物理网络地址和逻辑端口号的一个集合,而这个集合可以向另外一个位置的与他具有相同定义的socket进行数据传输。
因为socket是由机器地址和端口号来区分/识别的,那么在一个特定的计算机网络上,每一个socket都是以此方式被唯一识别的。这就使得应用程序可以唯一地去定位网络上的另外一个位置的socket。
注意:对于同一台机器上的两个socket,他们是完全具备彼此间进行通信的可能的;在这种情况下,两个socket具有相同的主机地址,但是他们拥有不同的端口号。
主机地址和端口号的组合,对于不同协议是不同的。在socket的经典应用中,网络通信使用的是IP(Internet Protocol)协议,但是实际上socket是支持很多其它协议的,对于这方面的信息稍后会提到。
● 正如我们将会看到的,不管我们选择怎样的通信协议(传输层),我们都可以使用同一种已成熟的socket API来实现通信。
● socket的经典应用是在TCP/IP协议的计算机网络上,使两个逻辑端点之间展开通信活动。最著名的应用TCP/IP的计算机网络,当然就是Internet了。绝大多数socket系统的实现都限定在了TCP/IP网络的通信上。
更多推荐
所有评论(0)