
计算机网络
Raven_csdn
分享,记录
展开
-
计算机网络--体系结构与参考模型
计算机体系结构的各个层次中,每一个报文都分为连个部分,一个数据部分,也就是SDU,另外一个是控制信息部分,也就是PCI,他们共同做成PDU.服务数据单元(SDU-service data unit):为完成用户所要的功能而应传送的数据。协议控制信息(PCI):控制协议操作的信息。协议数据单元(PDU):对等层之间传送的数据单位成为该层的PDU.在实际的网络中,每层的洗衣数据单元都有一个...原创 2019-02-28 16:44:04 · 304 阅读 · 0 评论 -
Socket编程---长短连接
长连接和短连接是由客户端决定的短连接是客户端每做一个通信就连接一次如果是频繁的业务模型,长连接比较好写一个短连接的的例子:#include<unistd.h>#include<sys/stat.h>#include<sys/wait.h>#include<sys/types.h>#include<fcntl.h>#in...原创 2019-04-22 23:06:13 · 611 阅读 · 0 评论 -
Socket编程---p2p模型
自己既能发送数据也能接收数据,既是服务端也是客户端服务端代码:#include<unistd.h>#include<sys/stat.h>#include<sys/wait.h>#include<sys/types.h>#include<fcntl.h>#include<stdlib.h>#include&...原创 2019-04-22 22:53:02 · 444 阅读 · 0 评论 -
Socket编程---c/s模型demo2
demo2的客户端和demo1的客户端相同只需要写重写服务端的程序.服务端代码如下:#include<unistd.h>#include<sys/stat.h>#include<sys/wait.h>#include<sys/types.h>#include<fcntl.h>#include<stdlib.h>...原创 2019-04-22 22:15:29 · 229 阅读 · 0 评论 -
Socket编程---c/s模式演示demo1
首先,看服务端代码:#include<unistd.h>#include<sys/stat.h>#include<sys/wait.h>#include<sys/types.h>#include<fcntl.h>#include<stdlib.h>#include<stdio.h>#include&...原创 2019-04-22 21:52:21 · 469 阅读 · 0 评论 -
Socket编程---API
Socket可以看成是用户进程与内核网络协议栈的编程接口Socket不仅可以用于本机的进程间通信,还可以用于网络上不同主机间的通信。IPv4套接口地址结构IPv4套接口地址结构通常也称为“网际套接字地址结构”,它以“sockaddr_in”命名,定义在头文件中<netinet/in.h>struct sockaddr_in{ uint8_t sin_len;//整个sock...原创 2019-04-22 20:45:19 · 453 阅读 · 0 评论 -
计算机网络--应用层
网络应用模型:C/S模型:区分处理请求的服务器和发出请求的客户机P2P模型:每台机器既是服务器也是客户机域名解析过程(m.xyz.com)迭代查询:1)客户机向其本地域名服务器发出DNS请求报文2)本地域名服务器接收到请求后,查询本地缓存,假设没有该记录,则以DNS客户的身份向根域名服务器发出解析请求。3)根域名服务器接收到请求后,判断该域名属于.com域,将对应的顶级域名...原创 2019-03-05 16:20:48 · 220 阅读 · 0 评论 -
计算机网络--传输层
提供服务:进程之间的逻辑通信、复用和分用、差错检测、面向连接的TCP和无连接的UDP1、传输层提供应用进程之间的逻辑通信(即端到端的通信)。与网络层的区别是,网络层提供的是主机之间的逻辑通信。2、复用和奋勇。复用是指发送方不同的应用进程都可以使用同一个传输层洗协议传送数据;分用是指接受方的传输层在剥去报文的首部后能够把这些数据正确交付到目的应用进程。3、传输层还要对收到的报文进行差错检...原创 2019-03-05 15:39:45 · 313 阅读 · 0 评论 -
计算机网络--网络层
网络层的功能是:异构网络互联,路由与转发,拥塞控制静态路由算法:由管理员手工配置路由信息,之后也能修改,只不过需要人工修改动态路由算法:通过路由器彼此交换的信息来构造路由表,分为距离向量和链路状态算法,自动更新。IPV4首部固定部分:20BIPV6首部40B,地址长度16B,它是从根本上解决IPV4地址耗尽问题。NAT:实现专用网络地址和公用网络地址之间的转换。比如学校局域网的...原创 2019-03-05 11:55:51 · 574 阅读 · 0 评论 -
计算机网络--数据链路层
数据链路层的功能是:为网络层提供服务、链路管理、帧定界、帧同步与透明传输、流量控制和差错控制。可靠传输是通过确认和超时重传两种机制来保证可靠传输流量控制:1、停止等待协议:发送发每发送一帧数据都要等待接受方的应答信号才发送下一帧理解:发送方发送数据(这时候的数据还在发送缓存中,以防止发生错误后的重传),设置计时器(稍大于数据报一个来回的时间),如果成功接受到了对方的确认帧,缓存中的...原创 2019-03-05 10:40:17 · 257 阅读 · 0 评论 -
计算机网络--物理层
物理层的功能是透明传输比特流,传输单位是比特。IOS模型的第1层,但是物理成传输的并不是电信号、光信号等,我们把传输媒介称为第0层。物理层传输方式有三种:电路交换、报文交换、分组交换电路交换:两点之间建立一条专用的物理传输路径。分为三个阶段:建立连接、传输数据、释放连接优点:1、通信延迟小 2、有序传输 3、没有冲突 4、使用范围广 5、实时性强 6、控制简单缺点:1、建立连接时...原创 2019-03-04 22:10:52 · 711 阅读 · 0 评论 -
网络I/O模型
1、阻塞I/O1)当上层应用app调用recv系统调用时,如果对等方没有发送数据(缓冲区没有数据),上层应用app将阻塞(默认行为,被linux内核阻塞)。2)当对等方发送了数据,linux内核recv端缓冲区,有数据后,内核会吧数据copy给用户空间。然后上层应用解除阻塞,执行下一步操作。2、非阻塞I/O1)、上层应用程序将套接字设置成非阻塞模式2)、上层应用程序轮询调用recv函数...原创 2019-04-24 23:58:14 · 229 阅读 · 0 评论