式),另外一种是"Datagram Sockets"(数据包格式)。我们以
后 谈 到 它 们 的 时 候 也 会 用 到 "SOCK_STREAM" 和
"SOCK_DGRAM"。数据报套接字有时也叫“无连接套接字”(如
果你确实要连接的时候可以用connect()。) 流式套接字是可
靠的双向通讯的数据流。如果你向套接字按顺序输出“1,2”,
那么它们将按顺序“1,2”到达另一边。它们是无错误的传递
的,有自己的错误控制,在此不讨论。
有什么在使用流式套接字?你可能听说过 telnet,不是吗?
它就使用流式套接字。你需要你所输入的字符按顺序到达,
不是吗?同样,WWW浏览器使用的 HTTP 协议也使用它们
来下载页面。实际上,当你通过端口80 telnet 到一个 WWW
站点,然后输入 “GET pagename” 的时候,你也可以得到
HTML 的内容。为什么流式套接字可以达到高质量的数据传
输?这是因为它使用了“传输控制协议 (The Transmission
Control Protocol)”,也叫 “TCP” (请参考 RFC-793 获得详细
资料。)TCP 控制你的数据按顺序到达并且没有错误。你也
许听到 “TCP” 是因为听到过 “TCP/IP”。这里的 IP 是指
“Internet 协议”(请参考 RFC-791。) IP 只是处理 Internet 路
由而已。
那么数据报套接字呢?为什么它叫无连接呢?为什么它
是不可靠的呢?有这样的一些事实:如果你发送一个数据报,
它可能会到达,它可能次序颠倒了。如果它到达,那么在这
评论0
最新资源