zoukankan      html  css  js  c++  java
  • 黑客编程教程(三)Windows 网络协议

    首先介绍一下网络协议:网络协议是网络上所有设备之间通信规则的集合,他定义了通信时信息必须采用的格式和这些格式的意义.大多数
     网络协议都采用分层体系结,每一层都建立在他的下层之上,向他的上一层提供服务,而把如何实现这一服务的细节对上层加以屏蔽.一台设备上
     的第N层与另一台设备上的第N层进行通信的规则就是第N曾协议.在网络上的个层之间中存在着许多协议,接受方和发送方同层的协议必须一致,
    否则,一方就无法识别另一方发出的信息.网络协议使网络上的设备各种设备能相互交换信息.
    
        常用的协议有:TCP/IP协议,IPX/SPX歇息等等.在局域网中常用的IPX/SPX协议.而访问INTERNET,就必须添加TCP/IP协议.
       
         TCP/IP协议是传输控制协议/互联网络协议.他规范了网络上所有设备的通信,尤其是一个主机与另一个主机之间的数据往来格式以及传送
     方式.
    
        在网络的各层中还存在着许多协议,下面列出部分网络协议规范:
        ARP  地址解析协议
       SNMP 网络管理协议
       BOOTP  让无盘站从一个中心服务器上获得IP地址
       DHCP 动态主机配置协议
    
       下面介绍网络7层协议在WINDOWS的实现:
      
         7层协议         WIN系统   
      ________________________________________
        7  应用层       7  应用程序
    ________________________________________________
        6  表示层       6  WINSOCK API(DLL)
     ___________________________________________
        5  会话层       5  SPI(DLL)
     __________________________________________________
        4  传输层       4  TDI(VXD,SYS)
     ___________________________________________________
        3  网络层       3  NDIS(VXD,SYS)
     __________________________________________________
        2  数据链路层   2  网卡驱动程序(VXD,SYS)
     ___________________________________________
        1  物理层       1  网卡
    _________________________________________________
    相信这个映射图可以让大家比较清楚了解他们的对应关系
    
    
         TCP协议图示
    
     应用程序协议     HTTP FTP  TELNET
      传输协议         TCP UDP
      网际协议         IP
      物理层协议       网卡
    
        IP协议保证数据的传输,TCP协议保证数据传输的质量.
         TCP/IP协议基于四层结构:应用层,传输层,网络层,接口层,数据在传输时每通过一层就要在数据上加个头,其中的数据供接受端同层使用,在
     接收端,每经过一层就把头去掉,来保证传输数据格式的一致.
    
    
      TCP头部结构:
                               16位源端口号        16位目的端口号
    _______________________________________________________________________________
                                        32位序列号
    ___________________________________________________________________________
                                        32位确认号
    _____________________________________________________________________________________
                      4位首部长度+6位保留字 6位标志  16位窗口大小
    _______________________________________________________________________________________
                               16位效验和             16位紧急数据偏移量
    _____________________________________________________________________________________
                                          数据段
    _______________________________________________________________________________
    
    
      IP头部结构:
                            4位IP版本号  4位首部长度  8位服务类型  16位总长度
    ___________________________________________________________________________________________
                                         16位标示                   3位标志和偏移
                          __________________________________________________________________________
                            8位生存时间    8位协议                  16位IP首部效验和
    ________________________________________________________________________________________________
                                      32位源IP地址
    _________________________________________________________________________________________________________
                                   32位目的IP地址      
     ________________________________________________________________________________________
                                   TCP头和数据
    
     ________________________________________________
  • 相关阅读:
    自定义控件详解(七):drawText()
    Android项目实战(三十六):给背景加上阴影效果
    Android项目实战(三十五):多渠道打包
    Android项目实战(三十三):AS下获取获取依赖三方的jar文件、aar 转 jar
    Android 方法数超过64k、编译OOM、编译过慢解决方案。
    自定义控件详解(六):Paint 画笔MaskFilter过滤
    浅谈Kotlin(四):控制流
    02-03 感知机对偶形式(鸢尾花分类)
    04-07 scikit-learn库之梯度提升树
    02-33 非线性支持向量机
  • 原文地址:https://www.cnblogs.com/rinack/p/3184938.html
Copyright © 2011-2022 走看看