ARP协议,AddressResolutionProtocol,地址解析协议,它是用于实现IP地址到MAC地址的映射。 1、每台主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址的对应关系; 2、当源主机需要将一个数据包发送到目的主机时,会首先检查自己的ARP列表,是否存在该IP地址对应的MAC地址;如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播,查询此目的主机对应的MAC地址。此ARP请求的数据包里,包括源主机的IP地址、硬件地址以及目的主机的IP地址; 3、网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP...

域名和IP的关系 IP地址在同一个网络中是唯一的,用来标识每一个网络上的设备,其相当于一个人的身份证号 域名在同一个网络中也是唯一的,就像是一个人的名字、绰号 假如你有多个不用的绰号,你的朋友可以用其中任何一个绰号叫你,但你的身份证号码确实唯一的。但同时你的绰号也可能和别人重复,假如你不在,有人叫你的绰号其他人可能就答应了。 一个IP可以对应多个域名吗? 一个域名可以对应多个IP,但这种情况DNS做负载均衡的 在用户访问过程中,一个域名只能对应一个IP。 而一个IP却可以对应多个域名,是一对多的关系。 IPV4地址不够如何解决? DHCP动态主机配置协议 动态分配IP地址,只给接入网络的设备...

  G1PV9Utmq6En   2023年11月02日   34   0   0 IPIPNATDNSNATDNS

一、IP地址又两部分组成 网络层负责将数据从一个设备传输到另一个设备,世界上那么多设备,又该如何找到对方呢?因此,网络层需要有区分设备得编号。 我们一般用IP地址给设备进行编号。 对于IPv4协议,IP地址共32位,分成四段(如192.168.0.1),每段8位。 只有一个单纯得IP地址虽然做到了区分设备,但是全世界那么多设备,寻址起来非常麻烦。 因此需要将IP地址分成两段: 一段是网络号,负责标识该IP地址属于哪个子网。 一个是主机号,负责标识同一子网下得不同主机。 二、IP地址分为A,B,C,D,E五大类 A类地址(1126):以0开头,网络号占前8位,主机号占后面24位。 B类地址(12...

  G1PV9Utmq6En   2023年11月02日   40   0   0 网络层IP子网网络层IP子网

一、IP协议是什么? IP协议(InternetProtocol)又被称为互联网协议,是支持网间互联的数据包协议,工作在网际层,主要目的就是为了提高网络的可扩展性。 通过网际协议IP,可以把参与互联的,性能各异的网络看作一个统一的网络。 和传输层TCP相比,IP协议是一种无连接、不可靠的数据包传输服务,和TCP协议一起构成了TCP/IP协议的核心。 二、IP协议有哪些作用 2.1寻址和路由 在IP数据报中携带源IP地址和目的IP地址来表示该数据包的源主机和目标主机。IP数据报在传输过程中,每个中间节点(IP网关、路由器)只根据网络地址来进行转发,如果中间节点是路由器,则路由器会根据路由表选择...

  G1PV9Utmq6En   2023年11月02日   54   0   0 IPTCP传输层IP传输层TCP

一、UDP协议为什么不可靠? UDP在传输数据之前不需要先建立连接,远地主机的运输层在接收到UDP报文后,不需要确认,提供不可靠交付。 总结就以下四点: 不保证消息交付:不确认,不重传,无超时 不保证交付顺序:不设置包序号,不重排,不会发生队首阻塞 不跟踪连接状态:不必建立连接或重启状态机 不进行拥塞控制:不内置客户端或网络反馈机制 二、DNS为什么要用UDP? 更准确地说,DNS既使用TCP又使用UDP。 当进行区域传送(主域名服务器向辅助域名服务器传送变化的那部分数据)时会使用TCP,因为数据同步传送的数据量比一个请求和应答的数据量要多,而TCP允许的报文长度更长,因此为了保证数据的正确性...

  G1PV9Utmq6En   2023年11月02日   53   0   0 UDPUDPTCPDNSDNSTCP

重传包括超时重传、快速重传、带选择确认的重传(SACK)、重复SACK四种。 一、TCP重传机制 1.1超时重传 超时重传,是TCP协议保证数据可靠性的另一个重要机制,其原理是在发送某一个数据以后就开启一个计时器,在一定时间内如果没有得到发送的数据报的ACK报文,那么就重新发送数据,直到发送成功为止。 1.2快速重传 TCP还有另外⼀种快速重传(FastRetransmit)机制,它不以时间为驱动,⽽是以数据驱动重传。 它不以时间驱动,而是以数据驱动。它是基于接收端的反馈信息来引发重传的。可以用它来解决超时重发的时间等待问题 1.3带选择确认的重传(SACK) 为了解决应该重传多少个包的问题?...

  G1PV9Utmq6En   2023年11月02日   21   0   0 TCP重传数据数据TCP重传

一、最根本区别:TCP是面向连接,而UDP是无连接。 可以这么形容:TCP是打电话,UDP是大喇叭。 二、TCP和UDP的应用场景 TCP应用场景:效率要求相对低,但对准确性要求相对高的场景。因为传输中需要对数据确认、重发、排序等操作,相比之下效率没有UDP高。例如:文件传输(准确高要求高、但是速度可以相对慢)、收发邮件、远程登录。 UDP应用场景:效率要求相对高,对准确性要求相对低的场景。例如:QQ聊天、在线视频、网络语音电话(即时通讯,速度要求高,但是出现偶尔断续不是太大问题,并且此处完全不可以使用重发机制)、广播通信(广播、多播)。 三、为什么QQ采用UDP协议? 首先,QQ并不是完...

  G1PV9Utmq6En   2023年11月02日   48   0   0 UDPUDPTCP应用场景应用场景TCP

一、什么是拥塞控制?不是有了流量控制吗? 前⾯的流量控制是避免发送⽅的数据填满接收⽅的缓存,但是并不知道整个⽹络之中发⽣了什么。 ⼀般来说,计算机⽹络都处在⼀个共享的环境。因此也有可能会因为其他主机之间的通信使得⽹络拥堵。 在⽹络出现拥堵时,如果继续发送⼤量数据包,可能会导致数据包时延、丢失等,这时TCP就会重传数据,但是⼀重传就会导致⽹络的负担更重,于是会导致更⼤的延迟以及更多的丢包,这个情况就会进⼊恶性循环被不断地放⼤.... 所以,TCP不能忽略整个网络中发⽣的事,它被设计成⼀个⽆私的协议,当⽹络发送拥塞时,TCP会⾃我牺牲,降低发送的数据流。 于是,就有了拥塞控制,控制的⽬的就是避免发...

一、Nagle算法和延迟确认是干什么的? 当我们TCP报⽂的承载的数据⾮常⼩的时候,例如⼏个字节,那么整个⽹络的效率是很低的,因为每个TCP报⽂中都会有20个字节的TCP头部,也会有20个字节的IP头部,⽽数据只有⼏个字节,所以在整个报⽂中有效数据占有的比例就会⾮常低。 这就好像快递员开着⼤货⻋送⼀个⼩包裹⼀样浪费。 那么就出现了常⻅的两种策略,来减少⼩报⽂的传输,分别是: Nagle算法 延迟确认 二、Nagle算法 Nagle算法:任意时刻,最多只能有一个未被确认的小段。所谓“小段”,指的是小于MSS尺寸的数据块,所谓“未被确认”,是指一个数据块发送出去后,没有收到对方发送的ACK确认该...

  G1PV9Utmq6En   2023年11月02日   32   0   0 TCP数据数据块数据块数据TCP

TCP发送一个数据,如果需要收到确认应答,才会发送下一个数据。这样的话就会有个缺点:效率会比较低。 “用一个比喻,我们在微信上聊天,你打完一句话,我回复一句之后,你才能打下一句。假如我没有及时回复呢?你是把话憋着不说吗?然后傻傻等到我回复之后再接着发下一句?” 为了解决这个问题,TCP引入了窗口,它是操作系统开辟的一个缓存空间。窗口大小值表示无需等待确认应答,而可以继续发送数据的最大值。 TCP头部有个字段叫win,也即那个16位的窗口大小,它告诉对方本端的TCP接收缓冲区还能容纳多少字节的数据,这样对方就可以控制发送数据的速度,从而达到流量控制的目的。 “通俗点讲,就是接受方每次收到数据包,...

一、题目 合并k 个升序的链表并将结果作为一个升序的链表返回其头节点。 二、题解 publicListNodemergeKLists(ArrayList<ListNode>lists){ ArrayList<Integer>arr=newArrayList<>(); ListNoderet=newListNode(); ListNodetemp; for(ListNodelistNode:lists){ temp=listNode; while(temp!=null){ arr.add(temp.val); temp=temp.next; } ...

  G1PV9Utmq6En   2023年11月02日   30   0   0 升序i++i++链表升序链表

TCP四次挥手过程: 数据传输结束之后,通信双方都可以主动发起断开连接请求,这里假定客户端发起 客户端发送释放连接报文,第一次挥手(FIN=1,seq=u),发送完毕后,客户端进入FIN_WAIT_1状态。 服务端发送确认报文,第二次挥手(ACK=1,ack=u+1,seq=v),发送完毕后,服务器端进入CLOSE_WAIT状态,客户端接收到这个确认包之后,进入FIN_WAIT_2状态。 服务端发送释放连接报文,第三次挥手(FIN=1,ACK1,seq=w,ack=u+1),发送完毕后,服务器端进入LAST_ACK状态,等待来自客户端的最后一个ACK。 客户端发送确认报文,第四次挥手(ACK...

一、HTTP请求方式 GET:对服务器获取资源的简单请求; POST:向服务器提交数据请求; PUT:修改指定资源; DELETE:删除URL标记的指定资源; CONNECT:用于代理服务器; TRANCE:主要用于回环测试; OPTIONS:返回所有可用的方法; HEAD:获取URL标记资源的首部。 其中用的比较多的就是:POST、DELETE、PUT、GET,对应于增删改查。 二、GET和POST的区别 2.1传参方式不同 从HTTP报文层来看,GET请求将信息放在URL中,POST请求将请求信息放在请求体中。 这一点使得GET请求携带的数据量有限,因为URL本身是有长度限制的,而POST...

  G1PV9Utmq6En   2023年11月02日   35   0   0 服务器数据缓存

一、HTTP请求的过程与原理 HTTP协议定义了浏览器怎么向服务器请求文档,以及服务器怎么把文档传给浏览器。 每个服务器都有一个进程,它不断监听TCP的80端口,以便发现是否有浏览器向它发出连接建立请求; 监听到连接请求,就会建立TCP连接; 浏览器向服务器发出浏览某个页面的请求,服务器返回所请求的页面作为响应; 最后释放TCP连接。 在浏览器和服务器之间的请求和相应的交互,必须按照规定的格式和遵循一定的规则,这些格式和规则就是超文本传输协议HTTP。 二、HTTP的报文结构 HTTP报文有两种,HTTP请求报文和HTTP响应报文。 2.1HTTP请求报文 HTTP请求报文的格式如下: ...

  G1PV9Utmq6En   2023年11月02日   76   0   0 字段HTTP首部

1、安全性不同 HTTP是超文本传输协议,信息是明文传输,存在安全风险的问题。 HTTPS解决了HTTP不安全的缺陷,在TCP和HTTP网络层之间加入了SSL/TLS安全协议,使得报文能够加密传输。 2、建立连接的过程 HTTP建立连接相对简单,TCP三次握手昼便可以进行HTTP的报文传输。 HTTPS在TCP三次握手之后,还需要进行SSL/TLS的握手过程,才可以进行加密报文传输。 3、端口号不同 HTTP的端口号是80。 HTTPS的端口号是443。 4、数字证书 HTTPS协议需要向CA(证书权威机构)申请数字证书来保证服务器的身份是可信的。

  G1PV9Utmq6En   2023年11月02日   37   0   0 httpsHTTPTCP

一、如何理解HTTP协议是无状态的? 无状态是指无客户端状态,就是HTTP协议中服务端不会保存客户端的任何信息。 比如当浏览器第一次发送请求给服务器时,服务器响应了,如果同个浏览器发起第二次请求给服务器时它还是会响应,但是服务器不知道你就是刚才发送请求的服务器。 那么浏览器怎么记录状态呢? 两个方法:Cookie和Session。 二、Cookie和Session有什么联系和区别? 2.1Cookie Cookie是保存在客户端的一小块文本串数据。 客户端向服务器发起请求时,服务端会向客户端发送一个Cookie,客户端就把Cookie保存起来,在客户端下次向同一服务端发送请求时,Cookie被...

  G1PV9Utmq6En   2023年11月02日   22   0   0 客户端服务器服务端

三次握手中每一次没收到报文会发生什么情况? 第一次握手服务端未收到SYN报文 服务端不会进行任何的动作,而客户端由于一段时间内没有收到服务端发来的确认报文,等待一段时间后会重新发送SYN报文,如果仍然没有回应,会重复这个过程,直到发送次数超过最大重传次数限制,就会返回连接建立失败。 第二次握手客户端未收到服务端响应的ACK报文 客户端会继续重传,直到次数限制;而服务端此时会阻塞在accept()处,等待客户端发送ACK报文。 第三次握手服务端为收到客户端发送过来的ACK报文 服务端同样会采用类似客户端的超时重传机制,如果重试次数超过限制,则accept()调用返回-1,服务端建立连接失败;而此...

  G1PV9Utmq6En   2023年11月02日   16   0   0 客户端数据服务端
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~