计算机网络
文章平均质量分 93
程序员Andrew
这个作者很懒,什么都没留下…
展开
-
09.计算机网络——套接字编程
socket套接字通常指的是封装了ip和port的结构体,其是网络编程中的一种通信机制,支持TCP/IP的网络通信的基本操作单元,简单的说就是通信的两方的一种约定,用套接字中的相关函数来完成通信过程。sockaddr_in中的成员struct in_addr sin_addr表示32位 的IP 地址,但是我们通常用点分十进制的字符串表示IP 地址,以下函数可以在字符串表示 和in_addr表示之间转换。h表示host,n表示network,l表示32位长整数,s表示16位短整数。原创 2023-07-20 20:40:52 · 546 阅读 · 0 评论 -
08.计算机网络——其他重要协议和技术
代理服务器的作用:客户端向代理服务器发送请求, 代理服务器将请求转发给真正要请求的服务器; TCP/IP中使用IP地址和端口号来确定网络上的一台主机的一个程序,但是IP地址不方便记忆,于是人们发明域名,其本质是一个字符串,映射了它和IP地址的关系。 用户输入域名的时候, 会自动查询DNS服务器, 由DNS服务器检索数据库, 得到对应的IP地址。DNS是传输层采用UDP协议的应用层协议。 NAT是一种将私有IP和全局IP相互转化的技术方法,是解决IP地址不够用的主要手段,是路由器的一个重要功能。原创 2023-07-20 20:37:18 · 431 阅读 · 0 评论 -
07.计算机网络——数据链路层
双方在发送SYN的时候会在TCP头部写入自己能支持的MSS值,然后双方得知对方的MSS值之后, 选择较小的作为最终MSS,MSS的值在TCP首部的40字节变长选项中。 如果UDP在网络层分成多个IP数据报,这多个IP数据报有任意一个丢失, 都会引起接收端网络层重组失败. 那么这就意味着, 如果UDP数据报在网络层被分片, 整个数据被丢失的概率就大大增加了。 当进行网络通信的时候,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址。原创 2023-07-20 20:36:02 · 379 阅读 · 0 评论 -
06.计算机网络——IP协议
转发过程: 如果要发送的数据包的目的地址是192.168.56.3跟第一行的子网掩码做与运算得到192.168.56.0,与第一行的目的网络地址不符,再跟第二行的子网掩码做与运算得 到192.168.56.0,正是第二行的目的网络地址,因此从eth1接口发送出去。 路由是指:多台设备进行通信时,彼此之间发送具有IP特征的数据包,当数据包经过具备路由功能的设备时,设备进行解包并查看IP报文的目的网络地址,并于自身维护的路由表条目进行匹配,符合则进行转发,否则丢弃报文,回应网络不可达。原创 2023-07-20 20:34:24 · 497 阅读 · 0 评论 -
05.计算机网络——TCP协议
TCP协议——TCP全称为 “(Transmission Control Protocol)”,对数据的传输进行一个详细的控制。原创 2023-07-20 20:27:09 · 440 阅读 · 0 评论 -
04.计算机网络——UDP协议
发送填充是将除了校验和的16位比特位,其余的按照16个比特位相加,在相加的过程中如果出现比特位超过16位的情况需要进行回卷,回卷的策略:最高位+低16位计算出来的新值。如果校验失败,即使数据已经到达了接收方传输层的UDP协议,也会被丢弃,有可能在传输的过程中失真。应用层交给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并。当数据在应用层会被打上应用层的报头,在报头中会有数据的长度和两个标识,一个标识用来标识是否属于同一条数据,另一个标识用来标识当前数据在整个完整的数据的什么位置,相当于偏移量。原创 2023-04-18 14:27:17 · 538 阅读 · 0 评论 -
02.计算机网络——HTTP协议
应用层程序员写的一个个解决实际问题,基于socket接口之上编写的具体逻辑,满足我们日常需求的网络程序,都是在应用层。这些工作都是与文本处理相关的,所以http协议一定具有大量的文本分析和协议处理。协议协议是一种 “约定”,协议定义了在两个或多个通信实体之间交换的报文格式和次序,以及报文发送/报文接收或其他事件所采取的行动。socket api的接口在读写数据时,都是按 “字符串” 的方式来发送接收的。原创 2023-04-17 22:43:44 · 726 阅读 · 0 评论 -
03.计算机网络——HTTPS协议
加密就是把明文(要传输的信息)进行一系列的变化生成密文。解密就是把密文再进行一系列变化,还原成明文。在这个解密和加密的过程中,往往都需要一个或者多个中间数据,辅助进行这个过程,这样的数据被称为密钥。数字指纹/数据摘要,其基本原理是利用单向散列函数(Hash函数)对信息进行运算,生成一串固定长度的数字摘要。它并不是⼀种加密机制,但可以用来判断数据有没有被窜改。原创 2023-04-17 22:45:11 · 324 阅读 · 0 评论 -
01.计算机网络——网络基础
路由器接受到数据后,会拆掉数据链路层的MAC头部信息,将数据包送往网络层,路由器将检测数据包头部的目标IP地址信息,并根据该信息进行路由转发,将数据报文转发到下一路由器上,在转发前要重新封装新的MAC头部信息,并将数据转换成二进制。协议本质就是软件,软件是可以“分层”的,所以协议在设计的时候就是按照层状划分的。协议是双方约定同一种语言,进行沟通,计算机之间的传输媒介是光信号和电信号. 通过 “频率” 和 “强弱” 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式。原创 2023-04-13 18:13:19 · 501 阅读 · 1 评论