首先介绍一下网络协议:网络协议是网络上所有设备之间通信规则的集合,他定义了通信时信息必须采用的格式和这些格式的意义.大多数
网络协议都采用分层体系结,每一层都建立在他的下层之上,向他的上一层提供服务,而把如何实现这一服务的细节对上层加以屏蔽.一台设备上
的第N层与另一台设备上的第N层进行通信的规则就是第N曾协议.在网络上的个层之间中存在着许多协议,接受方和发送方同层的协议必须一致,
否则,一方就无法识别另一方发出的信息.网络协议使网络上的设备各种设备能相互交换信息. 常用的协议有:TCP/IP协议,IPX/SPX歇息等等.在局域网中常用的IPX/SPX协议.而访问INTERNET,就必须添加TCP/IP协议. TCP/IP协议是传输控制协议/互联网络协议.他规范了网络上所有设备的通信,尤其是一个主机与另一个主机之间的数据往来格式以及传送
方式. 在网络的各层中还存在着许多协议,下面列出部分网络协议规范:
ARP 地址解析协议
SNMP 网络管理协议
BOOTP 让无盘站从一个中心服务器上获得IP地址
DHCP 动态主机配置协议 下面介绍网络7层协议在WINDOWS的实现: 7层协议 WIN系统
________________________________________
应用层 应用程序
________________________________________________
表示层 WINSOCK API(DLL)
___________________________________________
会话层 SPI(DLL)
__________________________________________________
传输层 TDI(VXD,SYS)
___________________________________________________
网络层 NDIS(VXD,SYS)
__________________________________________________
数据链路层 网卡驱动程序(VXD,SYS)
___________________________________________
物理层 网卡
_________________________________________________
相信这个映射图可以让大家比较清楚了解他们的对应关系 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头和数据 ________________________________________________

黑客编程教程(三)Windows 网络协议的更多相关文章

  1. 脑残式网络编程入门(三):HTTP协议必知必会的一些知识

    本文原作者:“竹千代”,原文由“玉刚说”写作平台提供写作赞助,原文版权归“玉刚说”微信公众号所有,即时通讯网收录时有改动. 1.前言 无论是即时通讯应用还是传统的信息系统,Http协议都是我们最常打交 ...

  2. 黑客编程教程(二)Win API编程简介

    第二节 Win API编程简介 下面介绍一下WIN API. 我们需要自己编写一个工具时,必然会用到很多操作windows和控制windows的函数,这些函数就是windows API. API是Ap ...

  3. 黑客编程教程(一)了解Windows机制

    第一节 了解Windows机制 Windows 是一个“基于事件的,消息驱动的”操作系统. 在Windows下执行一个程序,只要用户进行了影响窗口的动作(如改变窗口大小或移动.单击鼠标等)该动作就会触 ...

  4. 黑客编程教程(六)Windows的关机和重起

    第六节 Windows的关机和重起 很多木马都有远程关机功能,但这并不是一个很好的功能.不过对于入侵服务器,有时需要重起服务器.其实对于关机和重起,只需要调用几个 API函数即可实现. 对于WIN9X ...

  5. 黑客编程教程(八)编写NT服务

    先介绍一下什么是NT服务,实际上就是一个可以在系统启动时自动在一定身份下启动的,伴随着系统长期存在的进程. 一个NT服务有三部分构成: :Service Control Manager(SCM) 每个 ...

  6. View Programming Guide for iOS ---- iOS 视图编程指南(三)---Windows

    Windows Every iOS application needs at least one window—an instance of the UIWindow class—and some m ...

  7. python网络编程【三】(网络服务器)

    建立一个服务器需要以下4步: 1.建立socket对象. 2.设置socket选项(可选的) 3.绑定到一个端口(同样,也可以是一个指定的网卡). 4.侦听连接. 下面代码片段可以实现这些功能: ho ...

  8. 黑客编程教程(十三)多线程DOS程序

    DOS基本原理相信大家都已经很熟悉了,DOS工具大家也用的很熟悉.在群里 经常有人说什么时候去DOS什么东西. 现在我们就自己编写一个DOS工具. #include <winsock2.h> ...

  9. 黑客编程教程(十五)HTTP代理

    #include <stdio.h> #include <winsock2.h> #define MAXBUFLEN 20480 #define HTTPADDLEN 50 # ...

随机推荐

  1. UISlider设置按钮透明

    UISlider *aslider = [[UISlider alloc]initWithFrame:kCR(, , , )]; [aslider setValue:0.5]; [aslider se ...

  2. 微信小程序 - promise(get\post)

    部分源码来自于http://www.wxapp-union.com/home.php?mod=space&uid=17761,就是小程序社区 , 参考以及借鉴一些类似cnblog,csdn上的 ...

  3. mkdir命令(转)

    原文:http://www.cnblogs.com/peida/archive/2012/10/25/2738271.html linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户 ...

  4. oracl 、mysql在线查看文档

    Oracle .mysql在线开发文档: http://www.runoob.com/sql/sql-union.html

  5. 解决m2e插件maven-dependency-plugin问题

    http://blog.csdn.net/smst1987/article/details/6871495 问题:maven-dependency-plugin (goals "copy-d ...

  6. 解决 vue 的缩进问题 及 vue 的 sass 调用 mixin 函数

    1.解决 vue 的缩进问题 配置 eslint , 只要要eslint 对应的值为 0,则 eslint 将不会对其进行检测 (.eslintrc.js  --  rules ) A. 不检测 缩进 ...

  7. 【SPSS】软件介绍

    SPSS软件是美国斯坦福大学三位学生1968年研制开发的统计软件,SPSS是Statistical Package for Social Science(社会科学软件统计包)的缩写,2000年SPSS ...

  8. DIV+CSS专题:十天学会DIV+CSS

    DIV+CSS专题:十天学会DIV+CSS,在网上看到的.感觉蛮好,推荐一下. 十天学会DIV+CSS(WEB标准)CHM格式文件下载 第十天 div+css网页标准布局实例教程(三) 第十天 div ...

  9. 最新美行地图Z13升级攻略

    原文地址:http://bbs.gpsuu.com/read.php?tid-231134.html  2013年11月16日订车,4S答应送导航,却没有提送什么导航.12月24日提车,DVD导航一体 ...

  10. OpenWrt 中安装配置Transmission

    参考文章https://wiki.openwrt.org/doc/uci/transmission 1. 安装包 必装的 transmission-daemon-openssl (后台服务)选装的 t ...