zoukankan      html  css  js  c++  java
  • 第7周作业

    1、简述OSI七层模型和TCP/IP五层模型

    解答:
    OSI七层模型简述如下:
    物理层提供为建立、维护和拆除物理链路所需要的机械的、电气的、功能的和规程的特性;有关的物理链路上传输非结构的位流以及故障检测指示。
    数据链路层:在网络层实体间提供数据发送和接收的功能和过程;提供数据链路的流控。
    网络层控制分组传送系统的操作、路由选择、拥护控制、网络互连等功能,它的作用是将具体的物理传送对高层透明。
    传输层提供建立、维护和拆除传送连接的功能;选择网络层提供最合适的服务;在系统之间提供可靠的透明的数据传送,提供端到端的错误恢复和流量控制。
    会话层提供两进程之间建立、维护和结束会话连接的功能;提供交互会话的管理功能,如三种数据流方向的控制,即一路交互、两路交替和两路同时会话模式 。
    表示层代表应用进程协商数据表示;完成数据转换、格式化和文本压缩。
    应用层提供OSI用户服务,例如事务处理程序、文件传送协议和网络管理等。

    TCP/IP五层模型
    物理层:负责光电信号传递方式。集线器工作在物理层。以太网协议。
    数据链路层:负责设备之间的数据帧的传输和识别。交换机工作在数据链路层。例如网卡设备的驱动,帧同步,冲突检测,数据差错校验等工作。
    网络层:负责地址管理和路由选择。路由器工作在网络层。
    传输层:负责两台主机之间的数据传输。
    应用层:负责应用程序之间的沟通。网络编程主要针对的就是应用层。

    2、总结描述TCP三次握手四次挥手

    解答:
    三次握手:
    第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。
    第二次握手: Server 收到数据包后由标志位 SYN=1 知道 Client 请求建立连接, Server 将标志位 SYN 和 ACK 都置为 1 , ack=J+1 ,随机产生一个值 seq=K ,并将该数据包发送给 Client 以确认连接请求, Server 进入 SYN_RCVD 状态。
    第三次握手: Client 收到确认后,检查 ack 是否为 J+1 , ACK 是否为 1 ,如果正确则将标志位 ACK 置为 1 , ack=K+1 ,并将该数据包发送给 Server , Server 检查 ack 是否为 K+1 , ACK 是否为 1 ,如果正确则连接建立成功, Client 和 Server 进入 ESTABLISHED 状态,完成三次握手,随后 Client 与 Server 之间可以开始传输数据了。

    四次挥手
    第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
    第二次挥手: Server 收到 FIN 后,发送一个 ACK 给 Client ,确认序号为收到序号 +1 (与 SYN 相同,一个 FIN 占用一个序号), Server 进入 CLOSE_WAIT 状态。
    第三次挥手: Server 发送一个 FIN ,用来关闭 Server 到 Client 的数据传送, Server 进入 LAST_ACK 状态。
    第四次挥手: Client 收到 FIN 后, Client 进入 TIME_WAIT 状态,接着发送一个 ACK 给 Server ,确认序号为收到序号 +1 , Server 进入 CLOSED 状态,完成四次挥手。

    3、描述TCP和UDP区别

    TCP:传输控制协议
    这是一个面向连接的传输协议,在发送数据之前,要和对方建立可靠的连接。一个TCP连接必须经过三次握手才能建立,经过四次挥手才能断开。
    三次握手:客户端向服务器发送syn请求建立连接;
    服务器向客户端发送syn以及ack确定是否建立连接?
    客户端向服务器发送ack确定建立连接。
    四次握手:客户端向服务器发送fin请求断开连接;
    服务器向客户端发送数据包;
    服务器向客户端fin以及ack确定是否断开连接;
    客户端向服务器发送fin确定断开连接。
    UDP:用户数据报协议
    这是一个无连接的简单的面向数据报的传输层协议
    UDP不提供可靠性,只是把应用程序传给ip层的数据包发送出来,但是不能保证他们到达目的地;由于UDP在传输数据包前不用在客户和服务器之间建立连接,并且没有超时重发机制,所以速度很快。
    区别
    1.基于连接与无连接;
    2.对系统资源的要求(TCP较多,UDP较少);
    3.UDP程序结构较为简单;
    4.TCP是流模式(SOCK_STREAM) UDP是数据报模式(SOCK_DGRAM);
    5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证;

    4、总结ip分类以及每个分类可以分配的IP数量

    解答:
    IP地址中的前5位用于标识IP地址的类别:
    A类地址的第一位为0;
    B类地址的前两位为10;
    C类地址的前三位为110;
    D类地址的前四位为1110;
    E类地址的前五位为11110。
    IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。全0和全1的都保留不用。

    A类:(1.0.0.0-126.0.0.0)(默认子网掩码:255.0.0.0或 0xFF000000)第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为“0”,所以地址的网络号取值于1~126之间。一般用于大型网络。
    定义:第1字节为网络地址,其它3个字节为主机地址
    范围:1.0.0.1 - 126.255.255.254
    数量:允许有126个网段,每个网段允许有16777214台主机
    子网掩码:255.0.0.0
    私有地址:10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址),范围10.0.0.1-10.255.255.254
    保留地址:127.X.X.X是保留地址,也是本机地址,等效于localhost或本机IP。一般用于测试使用。例如:ping 127.0.0.1来测试本机TCP/IP是否正常。

    B类:(128.0.0.0-191.255.0.0)(默认子网掩码:255.255.0.0或0xFFFF0000)前两个字节为网络号,后两个字节为主机号。该类IP地址的最前面为“10”,所以地址的网络号取值于128~191之间。一般用于中等规模网络。
    定义:第1字节和第2字节为网络地址,其它2个字节为主机地址
    范围:128.0.0.1 - 191.255.255.254
    数量:允许有16384个网段,每个网段允许有65534台主机
    子网掩码:255.255.0.0
    私有地址:172.16.0.0 - 172.31.255.255是私有地址
    保留地址:169.254.X.X是保留地址。如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP.

    C类:(192.0.0.0-223.255.255.0)(子网掩码:255.255.255.0或 0xFFFFFF00)前三个字节为网络号,最后一个字节为主机号。该类IP地址的最前面为“110”,所以地址的网络号取值于192~223之间。一般用于小型网络。
    定义:第1字节、第2字节和第3个字节为网络地址,第4个个字节为主机地址。另外第1个字节的前三位固定为110
    范围:192.0.0.1 - 223.255.255.254
    数量:允许有2097152个网段,每个网段允许有254台主机
    子网掩码:255.255.255.0
    私有地址:192.168.X.X是私有地址。(192.168.0.0 - 192.168.255.255)

    D类:是多播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。一般用于多路广播用户。
    定义:不分网络地址和主机地址,它的第1个字节的前四位固定为1110
    范围:224.0.0.1 - 239.255.255.254

    E类:是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。
    定义:不分网络地址和主机地址,它的第1个字节的前五位固定为11110
    范围:240.0.0.1 - 255.255.255.254

    5、总结IP配置方法

    解答:
    1.配置ip地址前首先ifconfig/ip addr查看网卡信息并获取到网卡的名称.

    2.cd /etc/sysconfig/network-scripts/,找到配置文件为ifcfg-ens33

    3.修改ifcfg-ens33,为如下:
    TYPE="Ethernet" # 网络类型,不用改的,默认就是Ethernet,以太网的意思
    PROXY_METHOD="none" # 代理方式:关闭状态
    BROWSER_ONLY="no" # 只是浏览器:否
    BOOTPROTO="none" # 网卡的引导协议:DHCP[中文名称: 动态主机配置协议]
    DEFROUTE="yes" # 默认路由:是
    IPV4_FAILURE_FATAL="yes" # 是不开启IPV4致命错误检测:否
    IPV6INIT="yes" # IPV6是否自动初始化: 是
    IPV6_AUTOCONF="yes" # IPV6是否自动配置:是
    IPV6_DEFROUTE="yes" # IPV6是否可以为默认路由:是
    IPV6_FAILURE_FATAL="no" # 是不开启IPV6致命错误检测:否
    IPV6_ADDR_GEN_MODE="stable-privacy" # IPV6地址生成模型:stable-privacy
    NAME="ens33" # 网卡物理设备名称
    UUID="c504fbcb-63b9-4aa8-bfff-4edde8ff6e02" # 通用唯一识别码, 每一个网卡都会有, 不能重复, 否两台linux只有一台网卡可用
    DEVICE="ens33" # 网卡设备名称, 必须和 NAME 值一样
    ONBOOT="yes" # 是否开机启动, 要想网卡开机就启动或通过 systemctl restart network控制网卡
    IPADDR="192.168.163.5" # IP地址
    PREFIX="24" #配置子网掩码
    GATEWAY="192.168.163.2" #网关
    DNS1="8.8.8.8" #DNS
    IPV6_PRIVACY="no"

    4.修改完成后重启网卡
    systemctl restart network

  • 相关阅读:
    Selenium系列教程(2)
    如何清除浏览器缓存?
    菜鸟学自动化测试(一)----selenium IDE
    Python风格规范
    NSURLSession使用说明及后台工作流程分析
    iOS如何生成.a文件
    Apple移动设备处理器指令集 armv6、armv7、armv7s及arm64
    使用Xcode和Instruments调试解决iOS内存泄露
    Instruments使用实战
    正则表达式在iOS中的运用
  • 原文地址:https://www.cnblogs.com/mwd-123/p/12045949.html
Copyright © 2011-2022 走看看