Socket的概念
日期:2004-10-17 18:35:42 来源:http://bbs.wanw.net 作者:blue 总浏览:42
Mail、ftp、telnet、name和finger都是网络上的计算机提供的服务器(这些服务器均是软件)。 每种服务器都是在一个专用的公开的端口上提供的,通过连接到这些端口,客户程序就能够访问这 些服务器。这与现实生活是相似的——当需要干洗衣服的时候,找干洗店;当需要取钱的时候,去银 行,等等。除了专用于特定服务器的端口外,计算机还有其它的端口让程序员创建他们自己的服务 器。
端口一般是编号的,通过指定服务器的端口号,客户程序可以连接到该端口上。每种服务器或 端口要有特定的协议,为了让客户的请求能够被理解和响应,客户必须以这种服务器特有的方式形 成客户请求。
Socket是网络上运行的两个程序间双向通信连接的一端。Socket这个词的一般意义是自然的 或人工的插口,如家用电器的电源插口等。
客户程序可以向Socket写请求,服务器将处理此请求,然后通过Socket把结果返回给客户。
Socket是一种底层连接。客户机和服务器通过写入到Socket的字节流进行通信。它们必须有 共同的协议,也就是说,通过Socket相互传送信息时所用的语言必须是协定好的。
如果客户正试图连接到WWW,那么类URL及相关类(URL Connection、URL Encoder)比较适 合。相对来说,URL是对Web的高层连接,并且把Socket用作低层实现的一部分。
|