zoukankan      html  css  js  c++  java
  • 计算机网络

    1 计算机网络历史

    • 第一代:以单计算机为中心的联机系统,只在内部进行通信

    • 第二代:计算机与计算机互联网络,主机既做数据处理,又做通信

    • 第三代:计算机网络进入标准化发展(按协议进行)

      • ARPANET的标准协议

        用于计算机之间的数据传输;能够连接不同类型的计算机;所有的网络结点都同等重要;必须有冗余的路由(路由(路由寻址):路由器从一个接口上接收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程);网络结果尽可能地简单,但能非常可靠地传送数据。

      • TCP/IP协议

        基于TCP/IP的4.2BSD;不同网络之间的通信

      • ISO的OSI/RM规范

    2 计算机网络体系结构通信原理

    2.1 数据通信原理

    • 发送端自上而下传输(直到物理层)
    • 接收端自下而上传输(知道发送端发起通信的层次)

    2.2 对等会话原理

    • 发送端和接收端只有在对等层才可以实现通信
    • 不同层次传输的数据格式不一样
      • 应用层、表示出和会话层以报文方式传输
      • 传输层以保温或者报文段方式传输
      • 网络层以分钟方式传输
      • 数据链路层以帧方式传输
      • 物理层以比特流方式传输
    • 发送端每经过一层(除物理层外)都要在元数据上进行协议封装,即最前面加装一个本层所使用协议的头
    • 接收端每经过一层都要对原数据进行协议解封装,即去掉原数据最前面的上层协议头

    3 OSI/RM七层模型(Open Systems Interconnection/Reference Model)(开放系统互联参考模型)

    3.1 物理层:Physical

    • 只负责传输二进制比特流
    • 为数据链路层提供服务
    • 负责将上层数据封装成帧

      帧:数据链路层完成从物理层到网络层的过度、准备工作

    • 传输管理

      为网络层提供低出错率、高可靠性的数据链路

    • 流量控制

      协调主机和同i性能设备之间的数据传输率

    3.3 网络层:Network

    • 负责路由寻址和广播
    • 路由器选择与终端
    • 控制分组传送系统的操作
    • 控制流量,以防网络过于拥挤
    • 建立和撤销网络连接
    • 根据传输层的要求来选择服务

    3.4 传输层:Transport

    • 负责建立一个可靠的端到端的连接,包括数据核对和初步整理
    • 建立、维护和撤销传输连接——端对端的连接
    • 控制流量,差错控制
    • 选择合适的网络层服务以实现器功能
    • 提供数据的编号、排序、拼接以及重同步功能

    3.5 会话层:Session

    • 负责建立维护拆除会话
    • 提供两进程之间建立、维护和结束会话连接的功能
    • 管理会话
    • 同步数据
    • 注意:会话层一般和传输层一起使用

    3.6 表示层:Presentation

    • 表示数据形式,完成对传输数据的转换化
    • 代表应用层协商数据表示
    • 完成对传输数据的转化,如格式化、加/解密、压缩/解压

    3.7 应用层:Application

    • 所有应用程序的网络在此展开,去欸的那个进程之间通信的性质,以满足用户的需求
    • 提供应用程序的网络支持

    4 TCP/IP四层模型

    • 在物理连接上,实现逻辑链路的连接
    • 接口卡(网卡):具有物理地址,即MAC地址(唯一不变)
    • SLIP(Serial Line Internet Protocol)协议
      • 串行线路因特网协议
      • 缺点:没有差错校验机制
    • PPP(Point to Point Protocal)协议
      • 用于串行与并行线路上的拨号来连接
      • 解决SLIP存在的问题
    • ARP(Address Resolution Protocol)协议
      • 地址解析协议
      • 根据IP地址获取MAC地址的一个TCP/IP协议
    • RPARP(Reverse Address Resolution Protocol)协议
      • 反向地址解析协议
      • 根据MAC地址获取IP地址的一个TCP/IP协议

    4.2 网络互联层(网际层):Network

    • 在不同网络之间进行路由寻址、传递数据报
    • IP(Internet Protocol)协议
      • 无连接、不可靠的协议
      • 负责在主机之间寻址
      • 设定路由
    • ICMP(Internet Control Message Protocol)协议
      • 在主机与路由器之间传递控制信息
      • 是一种面向无连接的协议
      • 报告错误(网络的错误检测,主机故障等)
      • 控制消息
      • Ping程序(Ping过程实际就是ICMP协议的工作过程)

    4.3 传输层:Transport

    • 建立应用间的端到端连接

    • TCP(Transmission Control Protocol)协议

      • 传输控制协议

      • 面向连接

        面向连接:会话建立、数据传输、会话拆除

      • 可靠(三次握手)

      • 速度慢

    • UDP(User Datagram Protocol)协议

      • 用户数据报协议

      • 无连接

        无连接:不保证数据的有序到达

      • 不可靠

      • 速度快

    4.4 应用层:Application

    • 主要负责用户和应用程序之间的通信
    • FTP:文件传输协议
    • HTTP:超文本传输协议
    • DNS:域名系统
    • Telnet:远程终端协议
    • IMAP:Internet邮件访问协议
    • POP3:邮局协议版本3

    5 IP地址

    5.1 IP地址的特点

    • IP地址为32位长
    • 每个IP地址被分成4组,每组8位,用英文句号隔开
    • 每组数字的大小范围为:0-255
    • IP地址由两部分组成:网络位+主机位

    5.2 IPv4地址的分类

    • A类
      • 最高位:0
      • 网络ID:8位
      • 网络数:126
      • 主机数:16777214
      • 网络号范围:1~127
    • B类
      • 最高位:10
      • 网络ID:16位
      • 网络数:16384
      • 主机数:65534
      • 网络号范围:128~191
    • C类
      • 最高位:110
      • 网络ID:24位
      • 网络数:2097152
      • 主机数:254
      • 网络号范围:192~223
    • D类
      • 最高位:1110
      • 广播地址
    • E类
      • 最高位:1111
      • 保留试验

    5.3 子网掩码

    • 保留地址
      • 网络号
        • 10.0.0.0 - 10.255.255.255
        • 127(环路测试,127.0.0.1指本机)
        • 172.16.0.0 - 172.31.255.255
        • 192.168.0.0 - 192.168.255.255
      • 主机号
        • 全0(表示子网)
        • 全1(广播)
      • 用来判断任意两台计算机的IP地址是否属于同一子网络的依据
      • 由连续的1和0构成
        • 默认A类:255.0.0.0
        • 默认B类:255.255.0.0
        • 默认C类:255.255.255.0

    5.4 IP地址的计算

    • 判断两个IP地址是否在同一个子网中

      • 1、将IP地址和子网掩码转换成二进制

      • 2、将IP地址和子网掩码按位进行与运算

      • 3、得出子网号,判断是否相同

        若子网号相同,则两个IP地址所在的主机之间可以进行通信。

    6 DNS域名系统/服务

    • Internet上域名与IP地址之间时一对一或一对多的关系,例如:百度的网址就是一个域名对应多个IP地址。
    • 机器之间只能相互认识IP地址,他们之间的转换工作称为域名解析。
    • 域名(Domain Name)
      • 由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称。
      • 域名系统时因特网使用的命名系统
      • mail(三级域名).cctv(二级域名).com(顶级域名)
      • 由英文字母和数字构成
      • 每个标号 不超过63个字符
      • 不区分大小写
      • 除连字符"-"不能包含其他符号
      • 完整域名总共不超过255个字符
    • 通用域
      • com:商业结构
      • org:非盈利组织
      • gov:美国政府部门
      • net:网络组织
      • edu:教育机构
      • mil:美国军事部门
      • int:国际组织
      • biz:商业
      • info:网络信息服务组织
    • 地区域
      • Cn:中国
      • Uk:英国
    • DNS的原理
      • 递归查询:DNS客户机发送到DNS服务器的查询,即使DNS服务器没有所请求的信息,它也会联系其他DNS服务器。
      • 重复(迭代)查询:DNS客户机允许DNS服务器根据自己的高速缓存或DNS区域提供最佳答案。这种类型的查询通常由试图解析DNS客户机的迭代查询的DNS服务器发出。
  • 相关阅读:
    [LeetCode] 19. Remove Nth Node From End of List 移除链表倒数第N个节点
    [LeetCode] 27. Remove Element 移除元素
    [LeetCode] 240. Search a 2D Matrix II 搜索一个二维矩阵 II
    [LeetCode] 74. Search a 2D Matrix 搜索一个二维矩阵
    [LeetCode] 452. Minimum Number of Arrows to Burst Balloons 最少箭数爆气球
    [LeetCode] 312. Burst Balloons 爆气球
    [LeetCode] 257. Binary Tree Paths 二叉树路径
    [LeetCode] 24. Swap Nodes in Pairs 成对交换节点
    [LeetCode] 680. Valid Palindrome II 验证回文字符串 II
    [LeetCode] 234. Palindrome Linked List 回文链表
  • 原文地址:https://www.cnblogs.com/aaron-zhou/p/12006523.html
Copyright © 2011-2022 走看看