首页下载资源后端服务器相关知识框架介绍

ZIP服务器相关知识框架介绍

qq_330895478.21MB需要积分:1

资源文件列表:

2服务器框架.zip 大约有5个文件
  1. 2服务器框架/
  2. 2服务器框架/2.1计算机网络.pdf 2.07MB
  3. 2服务器框架/2.2网络编程.pdf 3.32MB
  4. 2服务器框架/2.服务器架构模型.pptx 3MB
  5. 2服务器框架/C++提高图解.pptx 239.02KB

资源介绍:

服务器相关知识框架
Linux网络编程
1.网络编程协议概述
1.1协议概述
1. 协议protocol:通信双方必须遵守的规则
2. 协议按层次划分可以分为osi7层模型tcp/ip四层模型
1. osi 参考模型: 7 层(应------物) 是由 ISO(国际标准化组织) 定义
应用层 表示层 会话层 传输层 网络层 数据链路层 物理层
2. tcp/ip 模型 4 : ARPA 在研究 APRAnet 时提出的 ARPA 美国高级研究计划署)
应用层 传输层 网络层 网络接口层
应用层协议:http 超文本传输协议、ftp 文件传输协议、telnet 远程登录、ssh
全外壳协议、 smtp简单邮件发送、pop3 收邮件等
传输层协议:tcp 传输控制协议、udp 用户数据包协议等
TCP 协议: 传输控制协议、面向连接的协议、能保证传输安全可靠、速度慢
UDP 协议: 用户数据包协议、非面向连接、速度快、不可靠
网络层协议:ip 网际互联协议、 icmp 网络控制消息协议、 igmp 网络组管理协议
网络接口层协议:arp 地址转换协议、rarp 反向地址转换协议、mpls 多协议标签
交换等
3. 协议按应用划分可以分为公有协议私有协议
4. 通常是ip地址后面跟端口号(范围0-65535)ip用来定位主机,port区别应用(进程) 用户自己定
义的通常要大于1024(小于1024通常分配给常用的进程和协议),小于1
1.2OSI参考模型及TCP/IP参考模型
TCP/IP协议族的每一层的作用:
1. 网络接口层:负责将二进制流转换为数据帧,并进行数据帧的发送和接收。要注意的是数据帧是独
立的网络信息传输单元。
2. 网络层:负责点(路由节点)到点的传输,将数据帧封装成IP数据报,并运行必要的路由算法。
3. 传输层:负责端对端之间的通信会话连接和建立。传输协议的选择根据数据传输方式而定。
4. 应用层:负责应用程序的网络访问,这里通过端口号来识别各个不同的进程。
链路层有以太网、令牌环网等标准,链路层负责网卡设备的驱动、帧同步(即从网线上检测到什么
信号算作新帧的开始)、冲突检测(如果检测到冲突就自动重发)、数据差错校验等工作。交换机是工
作在链路层的网络设备,可以在不同的链路层网络之间转发数据帧(比如十兆以太网和百兆以太网之
间、以太网和令牌环网之间),由于不同链路层的帧格式不同,交换机要将进来的数据包拆掉链路层首
部重新封装之后再转发。
网络层的IP协议是构成Internet的基础。Internet上的主机通过IP地址来标识,Inter-net上有大量路
由器负责根据IP地址选择合适的路径转发数据包,数据包从Internet上的源主机到目的主机往往要经过
十多个路由器。路由器是工作在第三层的网络设备,同时兼有交换机的功能,可以在不同的链路层接口
之间转发数据包,因此路由器需要将进来的数据包拆掉网络层和链路层两层首部并重新封装。IP协议不
保证传输的可靠性,数据包在传输过程中可能丢失,可靠性可以在上层协议或应用程序中提供支持。
网络层负责点到点(ptoppoint-to-point)的传输(这里的指主机或路由器),而传输层负责
端到端(etoeend-to-end)的传输(这里的指源主机和目的主机)。传输层可选择TCPUDP
议。
以太网驱动程序首先根据以太网首部中的上层协议字段确定该数据帧的有效载荷(payload,指除
去协议首部之外实际传输的数据)是IPARP还是RARP协议的数据报,然后交给相应的协议处理。假如
IP数据报,IP协议再根据IP首部中的上层协议字段确定该数据报的有效载荷是TCPUDPICMP还是
IGMP,然后交给相应的协议处理。假如是TCP段或UDP段,TCPUDP协议再根据TCP首部或UDP首部
端口号字段确定应该将应用层数据交给哪个用户进程。IP地址是标识网络中不同主机的地址,而端口
号就是同一台主机上标识不同进程的地址,IP地址和端口号合起来标识网络中唯一的进程。
虽然IPARPRARP数据报都需要以太网驱动程序来封装成帧,但是从功能上划分,ARPRARP
于链路层,IP属于网络层。虽然ICMPIGMPTCPUDP的数据都需要IP协议来封装成数据报,但是从
功能上划分,ICMPIGMPIP同属于网络层,TCPUDP属于传输层。
TCP/IP协议族的每一层协议的相关注解:
1. ARP:(地址转换协议)用于获得同一物理网络中的硬件主机地址。是设备通过自己知道的IP地址
来获得自己不知道的物理地址的协议。
2. RARP:反向地址转换协议(RARPReverse Address Resolution Protocol 反向地址转换协议
RARP)允许局域网的物理机器从网关服务器的 ARP 表或者缓存上请求其 IP 地址。网络管理员在
局域网网关路由器里创建一个表以映射物理地址(MAC)和与其对应的 IP 地址。当设置一台新的
机器时,其 RARP 客户机程序需要向路由器上的 RARP 服务器请求相应的 IP 地址。假设在路由表
中已经设置了一个记录,RARP 服务器将会返回 IP 地址给机器,此机器就会存储起来以便日后使
用。 RARP 可以使用于以太网、光纤分布式数据接口及令牌环 LAN
3. IP:(网际互联协议)负责在主机和网络之间寻址和传递数据包。
4. ICMP:(网络控制消息协议)用于发送报告有关数据包的传送错误的协议。
5. IGMP:(网络组管理协议)被IP主机用来向本地多路广播路由器报告主机组成员的协议。主机与
本地路由器之间使用Internet组管理协议(IGMPInternet Group Management Protocol)来进
行组播组成员信息的交互。
6. TCP:(传输控制协议)为应用程序提供可靠的通信连接。适合于一次传输大批数据的情况。并适
用于要求得到响应的应用程序。
7. UDP:(用户数据包协议)提供了无连接通信,且不对传送包进行可靠的保证。适合于一次传输少
量数据。
1.3以太网帧数据格式
以太网的帧格式如下所示:
1. 其中的源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固
化的。可在shell中使用ifconfig命令查看,“ether 00:0c:29:b4:c6:ef”部分就是硬件地址。
2. 协议字段有三类值,分别对应IPARPRARP
3. 帧尾是CRC校验码
4. 以太网帧中的数据长度规定最小46字节最大1500字节,最大值1500称为以太网的最大传输单元
MTU),不同的网络类型有不同的MTU,如果一个数据包从以太网路由到拨号链路上,数据包
长度大于拨号链路的MTU,则需要对数据包进行分片(fragmentation)。ifconfig命令输出中也有
“MTU:1500”。注意,MTU这个概念指数据帧中有效载荷的最大长度,不包括帧头长度。
1.4ARP数据报格式
在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地
址,而数据包首先是被网卡接收到,再去处理上层协议的,如果接收到的数据包的硬件地址与本机不
符,则直接丢弃因此在通讯前必须获得目的主机的硬件地址ARP协议就起到这个作用。源主机发出
ARP请求,询问IP地址是192.168.0.1的主机的硬件地址是多少,并将这个请求广播到本地网段(以太
网帧首部的硬件地址填FF:FF:FF:FF:FF:FF表示广播),目的主机接收到广播的ARP请求,发现其中的IP
址与本机相符,则发送一个ARP应答数据包给源主机,将自己的硬件地址填写在应答包中。
每台主机都维护一个ARP缓存表,可以用arp -a命令查看。缓存表中的表项有过期时间(一般为20
分钟),如果20分钟内没有再次使用某个表项,则该表项失效,下次还要发ARP请求来获得目的主机的
硬件地址。想一想,为什么表项要有过期时间而不是一直有效?
ARP数据报的格式如下所示:
1. 硬件类型指链路层网络类型,1为以太网
2. 协议类型指要转换的地址类型,0x0800ipv4地址
3. 两个地址长度对于以太网地址和IP地址分别为64(字节)
4. op字段1表示ARP请求,op字段为2表示ARP应答
5. 由于以太网规定最小数据长度为46字节,ARP帧长度只有28字节,因此有18字节填充位,填充位的
内容没有定义,与具体实现相关。
1.5IP数据报格式
1. 版本号(Version:长度4比特。标识目前采用的IP协议的版本号。一般的值为0100IPv4),
0110IPv6
2. IP包头长度(Header Length:长度4比特。这个字段的作用是为了描述IP包头的长度,因为在
IP包头中有变长的可选部分。该部分占4bit位,单位为32bit4个字节),即本区域值= IP头部
长度(单位为bit/ (8 * 4),因此,一个IP包头的长度最长为“1111”,即15*460个字节。IP包头
最小长度为20字节
3. 服务类型(Type of Service:用于规定本数据报的处理方式
100+评论
captcha