网络编程基础 -- Socket:流,TCP连接,TCP可靠性概述

JerryXia 发表于 , 阅读 (888)
如前文所说,不同类型的Socket与不同类型的底层协议族以及同一协议族中的不同协议相关联。而我想说的主要就是TCP/IP协议族中的内容。现在TCP /IP协议族中的主要socket类型为"流套接字(stream socket)"和"数据报套接字(datagram socket)"。如果类比到现实中 stream socket类似于打电话沟通,datagram socket类似于写信沟通。当然,其他协议族当然也有相应的stream socket和datagram socket。我学习的时候喜... 阅读全文

网络编程基础 -- 分组报文,协议和Socket的概念

JerryXia 发表于 , 阅读 (831)
信息是指由程序创建和建设的“字节序列”。在网络环境中,这些字节序列被称作“分组报文”。一组报文包括了网络用来完成工作的控制信息,还包括了数据信息。协议相当于互相通信的程序(进程间通信)间达成的一种约定,它规定了分组报文的交换方式和它们包含的含义。一组协议规定了以下信息:结构。 比如报文中哪一部分表明了其目的地址。解析。如何对报文中所包含的信息进行解析。设计一组协议,通常是为了在一定约束条件下解决某一特定问题。比如,超文本传输协议http是为了解决在服务期间传递超文本对象的问题。网络层:网络... 阅读全文

网络编程基础 -- 字节和字符,对信息进行编码

JerryXia 发表于 , 阅读 (739)
TCP/IP 协议以字节的方式传输用户数据,并没有对其进行检查和修改。这个特点使得应用程序可以非常灵活地对其中传输的信息进行编码。TCP/IP的唯一约束是,信 息必须在块(chunk)中发送和接收,而块的长度必须是8位的倍数。而字节正好是8位的,因此我们可以认为在TCP/IP协议中传输的信息是字节序列。 鉴于此,我们可以进一步把传输的信息看做数字序列或数组,每个数字的取值范围是0~255(8位)。应用程序协议:明确定义了信息的发送者应该怎样排列和解释这些位序列(bit sequence),... 阅读全文