计算机网络-韩老师

概述

  • 计算机网络:由具有自主功能通过通信手段连接起来进行资源共享、协同工作的计算机组成的复合系统

    1、是一个复合系统,由计算机组成

    2、这些计算机具有自主功能,通过通信手段连接,可以资源共享和协同工作

  • 三网:电信网络、计算机网络、有线电视网络

  • 互联网:很多网络连接起来的网络。因特网是最大的互联网

  • 多层次ISP结构的互联网

  • 跨服务商的网会慢(电信访问移动)

  • 因特网的组成:边缘部分(c/s模式,p2p模式),核心部分(电路交换、报文交换、分组交换)

  • 分组交换的优点:不用建立连接,灵活,可靠

  • 局域网与广域网不能只用网络范围区分,要从用到的技术

    • 局域网,自己购买设备,自己维护,带宽固定,距离<100m
    • 广域网,花钱购买服务
  • 计算机网络的性能

  • OSI七层模型

    • 应用层:能够产生网络流量能够和用户交互的应用程序
    • 表示层:加密,压缩,开发人员,编码
    • 会话层:服务和客户端建立的会话,查木马netstat -nb
    • 传输层:可靠传输(建立会话)、不可靠传输、流量控制
    • 网络层:IP地址编址,选择最佳路径
    • 数据链路层:数据如何封装,添加物理层地址 MAC
    • 物理层:电压、接口标准

    分层的思想的应用:

    • 网络排错(从底层到高层)

    • 应用层编程时要与其他层无关

    • 网络安全

      • 物理层安全
      • 数据链路层安全 ADSL拨号密码,AP密码
      • 网络层安全 某个网段不能访问外网
      • 应用层安全 SQL注入漏洞,上传漏洞
  • 分层的原因:有利于标准化,有利于降低各层之间的依赖,降低协议设计的复杂性,便于网络实现和维护

  • 协议:两个对等实体通信的规则

物理层

  • 机械特性、电气特性、功能特性、过程特性
  • 信道的极限容量,信息传输的极限速率
    • 奈式准则:(理想低通,无噪声)
    • 香农定理:带宽有限,高斯白噪声
  • 无线电、微波、红外线、X射线、γ射线(频率从低到高)
  • 频率较低可以在地表传输可以绕开障碍物,频率较高为短波通信靠电离层反射,频率很高为微波通信是直线传播,可以通过地面微波接力通信或卫星通信
  • 集线器有放大信号和重发作用,是一个很大的冲突域,不定向发送,半双工,不安全,平分带宽
  • 信道复用技术:频分复用(调制到不同频率上)、正交频分复用(OFDM)、时分复用、统计时分复用(时间槽的分配是动态的不事先规定,加标记)、波分复用、码分复用CDM(CDMA码分多址)
    • 码分复用:同一时间同一频带传输不同信息,将一个比特时间分成m个间隔,称为码片,每个站点分配不同码片,彼此正交,缺点,站点多了,m越大 规格化内积
  • 数字传输技术:话音传输模拟信号数字化,1秒钟8000采样,一个码元8个比特,复用32次8000*8*32=2.048M
  • 宽带接入技术:
    • ADSL非对称数字用户线路(用电话线实现通话上网同时进行)(双绞线)
      • (用户线路本身的带宽很大,将低频段留给传统电话用,把原来没有使用的高频段留给用户上网,上行频段和下行频段带宽还不一样,下行频段带宽大,信道多则速率高)
      • 下行信道和上行信道用QAM数字调制,最后话音、下行、上行三个频段通过DMT(实质上就是OFDM)频分复用
    • HFC (光纤同轴混合网)(有线电视线是同轴电缆)
    • 光纤到户

数据链路层

  • 数据链路:物理线路+通信协议+实现协议的硬件和软件 网卡就是第三部分

  • 数据链路的三个基本问题:封装成帧、透明传输、差错控制

    • 透明传输就是不管所传数据是怎样的比特组合都可以在链路中传输,包括字符填充和比特填充
    • 差错控制 (校验和+计时器+编号+差错控制编码)
      • 差错控制编码:
        • 循环冗余检验CRC,只能做到无差错接收,检验不对即丢失帧,不保证帧丢失了之后的重传即不能做到可靠传输,也有可能检查不出错误,当很多位错误时最后取余还是0
        • 奇偶校验码
        • 分组码(可实现检错和纠错)
        • 卷积码
  • 点到点信道

    • PPP协议,可以从数据链路的三个基本问题看PPP协议,即支持面向字符又支持面向比特,不使用序号和确认机制(应用:拨号上网,分为NCP和LCP),支持身份验证,计费
  • 广播信道(局域网)

    • 共享通信媒体
      • 静态划分信道 信道复用技术
      • 动态媒体接入(随机接入)
        • CSMA/CD(以太网协议)半双工,争用期,最小帧长,二进制指数退避算法
    • 以太网 :局域网的一种
      • 分成两个子层:逻辑链路控制(LLC)、媒体接入控制(MAC)
      • 不可靠交付,帧错则丢失,重传由高层实现
      • MAC地址可以改
      • 最短帧长
      • 以太网的的传输链路不能太长是因为,传输时间越大,争用期越大,最小帧长越长,这样传输延迟小于两倍传播延迟,发送端不能在帧发送结束之前停止发送,不能实现碰撞检测
  • 网桥(扩展以太网,集线器扩展处在一个冲突域)

    • 隔断冲突域
    • 透明网桥:局域网上的计算机不知道发送的帧是否经过网桥,经过多少个网桥
    • 自学习算法,转发表
    • 源路由网桥(不透明)
  • 交换机

    • 多端口网桥
    • 带宽独享
    • 安全,局域网中其他计算机收不到其他计算机的信息
    • 效率高,一个口一个冲突域
    • 可以全双工,不用CSMA/CD,如何实现:端口有缓冲实现排队实现同时收发
    • 生成树算法(防止交换机之间出现回路,无限消耗网络资源)
      • 优先级、根交换机、根端口、选取端口、阻断端口
  • 虚拟局域网

    • 交换机不同端口的计算机划分到一个虚拟网段中,同一个网段跨交换机
    • 一个vlan=一个广播域=一个逻辑网段
    • 灵活、安全
    • 应用:公司按部门划分网段,而不是按楼层划分网段,一层上有不同的部门
    • 干道链路上是统计时分复用,可以传输多个vlan的广播信息
    • 在数据帧中加上vlan标记区分
    • image-20200507173640901
    image-20200507173728170
  • 高速以太网

    • 速率>=100Mb/s
  • 数据链路层安全:交换机端口可以设置允许连接的mac地址,也可以设置一个端口只能连接多少个设备

网络层

  • 两种服务:

    • 虚电路服务(逻辑连接)可靠通信交给网络(X)
    • 数据报服务(尽最大努力交付)可靠交付交给端系统
  • image-20200508145533403
  • IP协议

    • IP地址

      • 分成网络号和主机号,主机部分不能全为0,也不能全为1

      • ip地址分类 A\B\C\D\E

        • 特殊地址
          • 127.0.0.1
          • 169.254.0.0
          • 保留的私网地址10.0.0.0、172.16.0.0-172.31.0.0、192.168.0.0-192.168.255.0
      • 子网划分,借用主机号作为子网号,子网掩码也要变化

        • 子网掩码,用来与ip地址做与运算,判断目标地址和源地址在不在同一个网段(在则在一个局域网内传,不在则传给路由器)
        • 等分
        • 变长划分,子网掩码不一样
        • 点对点的子网掩码为255.255.255.252(这个子网内只能有两个ip地址)
      • 构成超网

        • 合并网段(路由聚合),以下两个图解释了如何合并,将网络号相同的几位划分子网,使得两台计算机可以不通过路由器就可以互通

          image-20200508171559783 image-20200508171807140
        • 合并网络也有规律,不是随便两个连着的子网都能移动一位子网掩码被合并,移多了又不符合要求

          image-20200508172908452
        • CIDR(无分类域间路由选择)

  • 数据包转发,MAC地址和IP地址

    • 交换机基于数据帧的mac地址转发数据帧,路由器基于数据包的IP地址转发数据包
    • 数据包在传输中不变,过网络设备时数据帧要用新的MAC地址封装
    • MAC地址决定了数据帧下一跳哪个设备接收,IP地址决定了数据包的起点和终点
    • 应用:代理服务器设置接收不到另一个网段的mac地址
  • ARP

    • arp欺骗

      • 如何断定arp欺骗 用arp -a看某些ip地址对应的mac地址是否错误
    • 原理:在实际的链路上传送数据帧,必须使用硬件地址,每个主机有ARP高速缓存,里面有局域网上的各主机和路由器的IP地址到硬件地址的映射表

    • 实现:广播发送ARP请求分组,指定mac地址主机回复ARP响应分组

    • 使用情况:

      image-20200508223905549
  • IP数据报

    • 首部+数据部分
    • 数据报格式
      • 生存时间TTL:过一个路由器减1,,可以用ping www.baidu.com -i n看本机到目的主机中经过的第n个路由器的IP地址
    • 数据报分片
  • 静态路由:告诉路由器所有不直连的网段的下一跳

  • 网关就是默认路由,指向路由器的一个端口地址

    一台计算机不能加两个网关,另一个用route add添加路由

  • ICMP网际控制报文协议

    • 网络层协议
    • 为了提高IP数据报交付成功的机会,报告差错情况
    • 分为差错报告报文和询问报文
    • ping 判断网络是否通
    • pathping 跟踪数据报的路径,查出故障点(tracert ip地址 也可以追踪路由)
  • 动态路由

    可以自动选择最佳路径,适应网络变化

    • RIP(路由信息协议)
      • 应用层协议,用UDP传输数据
      • 基于路由向量的路由选择协议
      • 最早,周期性广播,广播所有的路由,邻接路由器30s广播一次,跳数,16
      • 适用于小型互联网
      • 三个30s收不到邻居的广播,认为邻居路由器宕机,再传给下一个路由器这个信息
    • OSPF(开放最短路径优先)
      • 网络层协议,用IP数据包传送
      • 链路状态路由算法
      • 度量值:带宽
      • 支持多区域,一个区域内部的路由器只知道本区域的网络拓扑
      • 触发式更新,当链路状态发生变化时,用洪泛法向所有路由器发送信息
      • 三个表:邻居表(hello包)、链路状态表
      • Dijkstra算法
    • BGP
      • 应用层协议,基于TCP
      • 边界网关协议
      • 连接各个自治系统
      • 建立时交换整个路由表,之后只交换变化部分
  • 路由器

    • 分组转发、路由计算
  • VPN

    • 外网访问内网
    • 在网络上传输私有数据,将私有地址作为数据包在用公网地址封装,远端计算机拨号连接RAS服务器,这个服务器就可以将广域数据包解析为局域网数据包
    • image-20200509122159076
    • 就是将数据包在本地加密套上外壳,里面是代理服务器分配的IP和谷歌的IP,外壳上的地址是真实IP和代理服务器IP,数据包经过DNS和墙的检查后发送给代理服务器,代理服务器解密,将数据包发送给谷歌
  • NAT

    • 网络地址转换
    • PAT源端口也转换,端口也转换,这样就允许一个局域网内允许ip地址可重用
    • 计算机可以作NAT,也可以作为路由器
    • 端口映射
  • 组播

    • 支持多媒体应用
    • D类地址224-239
    • 多个单播会导致发送主机处理开销大,网络上交通量大,组播让源计算机发送单个分组可以抵达用一个组地址标识的若干台主机
    • IGMP

传输层

  • 传输层两个协议应用场景

    • TCP 分段 、编号、建立会话,可靠通信(不丢不重,可靠有序)、面向字节流、拥塞控制、流量控制
    • UDP 一个数据包就能完成数据通信、不建立通信、多播、 面向报文、 无拥塞控制
  • 传输层和应用层之间的关系

    • http=tcp+80
  • 应用层协议与服务之间的关系

    服务运行后在TCP或UDP的某个端口侦听客户端请求

  • Windows防火墙的作用

    • 关闭所有端口,拦截外面来的,不妨碍上网
    • 木马,是个服务,在本主机上访问外网,和外面的主机连接上,外面的主机就可以访问本机,防火墙拦不住,可用IP安全策略防御木马
  • UDP

    • 用户数据报协议
    • 特点:首部开销小、无拥塞控制适合实时应用、无连接、面向报文适合一次性传输少量数据的网络应用
    • 用户数据报(首部+数据)
  • TCP

    • 传输控制协议

    • 特点,传输报文段(首部+数据部分)TCP的首部更复杂、点到点

    • 端口号拼接IP地址构成套接字

    • 重要)首部格式 固定部分20字节

    • 如何实现可靠传输

      • 确认、超时重传、序号
      • 停止等待协议,常称作ARQ自动重传请求,信道利用率不高
      • 连续ARQ协议,(发送窗口>1、接收窗口>=1、滑动窗口、累计确认、捎带确认)
        • 后退N帧协议:接收端按序接收
        • 选择重传协议
      • 以字节为单位的滑动窗口技术,与数据链路层有所不同,窗口大小动态变化
      • 超时重传时间动态变化
    • 如何实现流量控制

      • 接收窗口确定发送窗口
      • 建立连接时接收端(客户端)就会发送一个窗口决定发送端(服务器)的发送窗口
      • 接收端给发送端确认数据时,也会附带一个窗口大小,调整已有的发送窗口
      • 发送端会定时的发送一个心跳包给接收端,看接受端是否action
    • 如何避免网络拥塞

      • 不只是两台计算机之间的问题,是一个全局性问题
      • 网络拥塞:网络吞吐量随输入负载增大而下降,表现:丢包
      • 拥塞控制方法:慢开始算法、拥塞避免算法(发送窗口由拥塞窗口决定)
      • 改进的拥塞控制:快重传和快恢复(在收到三个重复确认时就快重传,也认为此时网络拥塞执行快恢复)
      • 发送窗口为接收窗口和拥塞窗口中的最小值
    • TCP连接管理

      • 三次握手

        • 客户端向服务器发送一个连接请求报文段,首部SYN=1,seq=x,(ACK=0)
        • 服务器若同意连接,给该连接分配缓存和变量发回确认报文段SYN=1,ACK=1,seq=y,ack=x+1
        • 客户机收到确认报文段,给该连接分配缓存和变量,给服务器确认ACK=1,seq=x+1,ack=y+1

        (为什么需要第三次确认,有一种情况是客户端第一次发送连接请求,由于网络堵塞没及时到达服务器,客户端第二次发送连接请求,服务器收到了第二次的连接请求,返回确认给客户端,这时第一次连接请求到达服务器,服务器再次返回确认给客户端,客户端由于已经收到服务器确认,对第二次确认视而不见,这样服务器就处于等待状态消耗资源,若有第三次确认,服务器若收到第三次确认则建立连接,一段时间没收到则放弃等待)

      • 四次握手释放连接

        • 客户端主动关闭连接,向服务器发送释放报文段,FIN=1,seq=u
        • 服务器收到则发出确认,这时客户机到服务器方向的连接被关闭,ACK=1,seq=v,ack=u+1
        • 若服务器没有数据发送给客户端,则发出释放连接报文段,FIN=1,ACK=1,seq=w,ack=u+1
        • 客户端收到连接释放报文段,发送确认ACK=1,seq=u+1,ack=w+1,服务器收到后关闭连接,客户端需要再等待2MSL进入关闭状态(防止确认报文段丢失,服务器再次发送释放连接报文段,客户机若一放松确认报文段就关闭就收不到了)
    • 利用TCP建立发起SYN洪泛攻击:用不同的ip地址不断对服务器发送连接请求

应用层

  • 每个应用层协议都是为了解决特定的问题,实现特定功能

  • 协议的三个部分在应用层的表现:语法(请求报文和响应报文格式)、语义(报文中的字段不同的值所代表的意义)、同步(客户机和服务器交换顺序)

  • DNS

    • 负责解析域名,将域名解析成IP

    • 域名的结构,主机名.域名 构成了完全限定域名(FQDN) 使用DNS在Internet上解析

      如www.91xueit.com,www为主机名,91xueit.com才是域名,可以组合为ftp.91xueit.com,stmp.91xueit.com

    • 一个域名可以对应多个IP地址,实现网络负载均衡

    • 多个域名也可以对应同一个IP地址,一个域名下的多个主机在同一个服务器上,IP地址相同,如www.91xueit.com,blog.91xueit.com,bbs.91xueit.com为同一IP地址

    • 域名层次结构

      • 顶级、二级、三级
    • 域名解析过程

      • 本地域名服务器和本地主机都有缓存,找到了域名对应的IP地址都会缓存下来
      • 递归查询+迭代查询
      • 我的电脑的DNS是路由器的端口值,即路由器作域名服务器功能,不存储解析内容,只向根域名服务器请求
    • 查看本机DNS缓存ipconfig /displaydns

    • nslookup www.baidu.com 查看更全的域名解析结果

    • 安装内网使用的DNS服务器,为了方便使用内网中的IP地址,不用考虑是否注册是否重名,只在内网中使用,也可以节省域名解析的带宽(实战)

    • 应用层协议,用UDP传输

  • DHCP

    • 动态主机配置协议

    • 静态地址使用场景:服务器、不怎么移动的台式机

      动态地址使用场景:移动设备、无限设备、ADSL拨号

    • 地址租约和租约更新:

      • 租约过了50%找原来的DHCP服务器续约,过了75%找原来的DHCP服务器续约,如果没有续约成功,发广播请求地址,租约到了100%释放地址,生成169.254.0.0网段的一个地址
      • 重启计算机 ping网关,通,则看租约是否应该更新,不通,则直接请求新的地址
      • 人工更新租约:ipconfig/renew,人工释放租约:ipconfig/release
      • 租约生成过程,四种数据包
    • 安装配置DHCP服务(实战)

    • 跨网段分配IP地址,本网段没有DHCP服务器,主机通过广播寻找DHCP服务器找不到,在网关上设置,接收到本网段中的DHCP请求就定向发送给外网段的DHCP服务器

  • Telnet

    • 简单的远程终端协议
    • 客户端服务器模式
  • RDP

    • 远程桌面协议
    • TCP的3389
  • HTTP

    • 超级文本传输协议
    • 规定http请求和响应,数据包的格式
    • HTML
    • URL统一资源定位符
    • 持久连接,建立一个TCP连接后可以持续传输HTTP报文,流水线方式
    • 请求报文和响应报文
  • 一台服务器上可以有多个网站,微软主机装上IIS服务即可作为web服务器,每个网站用域名作区分(要想随意用域名就要安装内网使用的DNS服务器),每个网站可以用IP地址作区分(同一台机器可以有多个地址)

  • web代理服务器

    • 可以控制内网计算机对Internet的访问
    • 通过Web代理绕过防火墙
    • 使用web代理节省上网带宽

你可能感兴趣的:(计算机专业课)