精华内容
下载资源
问答
  • 网络协议实验指导

    2013-11-27 12:37:27
    关于各种网络协议的实验,对各种协议的分析和详细解释,及相关的实验步骤。简单容易理解。
  • 关于代理合作协议书范本 代理合作协议就是双方合作将同一件事情做好达成的协议,具有合作共赢性质,下面是小编整理代理合作协议合同,欢迎大家参阅。 代理合作协议合同 甲方:_____________ 乙方:__________...
  • http://pan.baidu.com/s/1bo2nxQR公开分享 百度云盘链接

    http://pan.baidu.com/s/1bo2nxQR

    公开分享 百度云盘链接

    展开全文
  • 本文内容主要参考自《计算机网络 自顶向下方法 原第6版》 前言 HTTP(超文本传输协议)Web应用层协议,它是Web核心。HTTP由两个程序实现:一个客户程序和一个服务器程序。客户程序和服务器程序运行在不同...

    本文内容主要参考自《计算机网络 自顶向下方法 原书第6版》

    前言

    HTTP(超文本传输协议)Web的应用层协议,它是Web的核心。HTTP由两个程序实现:一个客户程序和一个服务器程序。客户程序和服务器程序运行在不同的端系统中,通过交换HTTP报文进行会话。HTTP协议定义了这些报文的结构以及客户端和服务器进行报文的方式。

     

     

    HTTP和TCP

    HTTP使用TCP作为它的支撑运输协议。在客户端与服务端开始交互之前,HTTP客户会首先发起一个与服务器的TCP连接,这个TCP连接建立过程参考我的另一片博客(TCP连接--三次握手)。一旦连接建立,该浏览器(客户端进程)和服务器进程就可以通过套接字接口访问TCP。客户端和服务端向各自的套接字接口发送HTTP请求报文接收HTTP响应报文

    一旦客户向它的套接字发送了一个请求报文,该报文就脱离了客户控制并进入TCP的控制。TCP为HTTP提供可靠的数据传输服务,服务器进程发出的每个HTTP响应报文最终都能完整地到达客户端,这里可以看出分层结构的最大优点,即HTTP协议不用担心数据丢失,也不需要关注TCP从网络的数据丢失和乱序故障中恢复的细节,因为那是TCP以及协议栈较低层协议的工作。

     

    HTTP无状态

    HTTP是一个无状态协议,这意味着服务器向客户发送被请求的文件,而不存储关于该客户的任何状态信息。假如某个特点的客户在短短的数秒内两次请求同一个对象,服务器并不会因为刚刚为该客户端提供过相同的对象而对二次请求不再做回应,而是重新发送被请求的对象,就像完全忘记了不久之前所做过的事一样。

     

    常提及的两个版本:HTTP1.1和HTTP1.0

    这两个HTTP版本最主要的区别是:HTTP1.1提供持续连接,而HTTP1.0规定客户端与服务端之间保持非持续连接。

    这个区别意味着,对于HTTP1.0,浏览器(客户端)每次向服务器请求一个对象,都需要单独建立一个TCP连接,对于每个这样的连接,在客户和服务器中都要分配TCP的缓冲区和保持TCP变量,这必然会给Web服务器带来极大的负担;而对于HTTP1.1,服务器在发送响应后会保持该TCP连接打开,在相同的客户与服务器之间的后续请求和响应报文都能够通过相同的连接进行传送。关于HTTP1.1和1.0的更多区别可以参考这篇(HTTP1.0和HTTP1.1的区别

     

     

    HTTP报文格式:HTTP请求报文和HTTP响应报文

    --HTTP请求报文

    从报文中能得知的信息:

     

    • 该报文是用普通的ASCII文本书写的
    • 第一行称作请求行,包括三个字段:请求方法、URL字段和HTTP版本
    • 第一行之后的各行称作首部行,包括的信息有:Host指明请求对象的主机地址;Connection: close表示浏览器要求服务器在本次请求完成之后关闭这条连接,不使用持续连接;User-agent指明用户代理,即向服务器发送请求的浏览器的类型;Accept-language指定用户想得到该对象的语言版本,这是HTTP中可用的众多内容协商首部之一。

    报文格式

     

     

    --HTTP响应报文

    在请求报文的基础上分析该报文各个字段的含义并不困难,需要特别指明的是Content-Length首部行指示的是被发送对象中的字节数,Content-Type首部行指示的是实体主体的文本类型,这里是HTML文本。空行后的(data data data data data ...)表示的是Entity Body实体体,它是响应报文的主要部分,包含了请求的对象本身

     

    报文格式

     

     

    关于HTTP请求报文的GET和POST方法

    这部分内容参考自:https://www.cnblogs.com/wqhwe/p/5407468.html

     

    1. 从语法的侧重点上看,GET方法偏向于从服务器获取数据,POST方法则侧重于向服务端发送数据,但是实际上GET方法也可以向服务端发送数据
    2. get传输数据是通过URL请求,以“field(字段)= value”的形式,置于URL后,并用"?"连接,多个请求数据间用"&"连接,如http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见的;post传输数据通过Http的post机制,将字段与对应值封存在请求实体中发送给服务器,这个过程对用户是不可见的
    3. Get传输的数据量小,因为受URL长度限制,URL 的最大长度是 2048 个字符,但效率较高;Post可以传输大量数据,所以上传文件时只能用Post方式;
    4. get是不安全的,因为URL是可见的,可能会泄露私密信息,如密码等;post较get安全性较高;
    5. get方式只能支持ASCII字符,向服务器传的中文字符可能会乱码。post支持标准字符集,可以正确传递中文字符。

    关于两者更详细的区别可以参考:http://www.w3school.com.cn/tags/html_ref_httpmethods.asp

     

     

    HTTP请求报文的其他方法

     

     

    HTTP和HTTPS的瓜葛

    可以参考这篇:https://blog.csdn.net/dreamer841119554/article/details/79418043

     

    常见的状态码

     

     

    • 200  OK:请求成功,信息在返回的响应报文中
    • 301  Moved Permanently:请求的对象已经被永久转移,新的URL定义在响应报文的Location首部行中。客户软件会自动获取新的URL
    • 400  Bad Request:一个通用差错代码,指示该请求不能被服务器理解
    • 404  Not Found:被请求的文档不再服务器上
    • 505  HTTP Version Not Supported:服务器不支持请求报文使用的HTTP协议版本
    展开全文
  • 关于SMTP协议发送邮件总结

    万次阅读 2011-12-06 03:53:17
    最近在看一本,是VC++网络编程,可以说那本书写乱七八糟,我也晕头转向、、、 、 我写大家可能有些看着抽象,捡着能看懂看就行,我讲述是SMTP原理,而不是如何编程来实现,我纠结一天感悟,希望对学习网络...

      最近在看一本书,是VC++网络编程,可以说那本书写的乱七八糟,我也晕头转向、、、  、

    我写的大家可能有些看着抽象,捡着能看懂的看就行,我讲述的是SMTP的原理,而不是如何编程来实现,我纠结一天的感悟,希望对学习网络编程的朋友能有些帮助。。。

      书上的SMTP小例子是写一个可以向  smtp.163.com邮件服务器邮件,于是我就跟着探索!!

       SMTP是简单邮件传送协议,标准端口是25 ,SMTP也是TCP/IP族的成员,

        其实一直不大理解 SMTP协议 FTP协议等等协议,但是经过一天的纠结之后 终于明白了TCP  /IP族下的协议 ,其实都是一个玩意 ,都是客户端通过 套接字发送命令 然后服务器进行命令的响应 并且回应一定的信息用于表示,这条命令的执行状态。。。   

      我调试了大半天 一直失败,根据书上说的和以前的源码 ,我发现好多SMTP命令在 163的SMTP服务器上似乎不管用,而且返回错误信息

    220 163.com Anti-spam GT for Coremail System (163com[20111010]) //这是链接之后服务器自动发送过来的

    250 OK    //发送的是HTLO   xiaowei   命令之后服务器返回的信息表示成功

    502 Error: command not implemented    //到这里信息就出错了 ,
     

    死活就卡死在这里了,这样一来我的邮件发送器就做不下去了 ,于是我到处 baidu 原因,终于我发现了 原来 是因为 SMTP验证的原因,

    虽然我们能链接上 SMTP服务器但是 我们却不能发送邮件了,因为没有经过SMTP验证,   验证方式好像有很多种,RFC中也有介绍 。

    虽然心有不甘,没实现邮件发送的功能,但是起码了解了 SMTP的作用也算有点收获。

    毕竟人家是专业邮件服务器,如果让我们这样随便写个程序就能发送邮件的话那么人家能正常运营么?

    以前的很多源码利用SMTP能发送成功的原因是因为以前的邮件服务器没有 SMTP认证,最近几年 很多免费邮箱 都加上了 SMTP认证

    还有大家记得以前的匿名邮件吗? 

    这种邮件曾被作为广告的一种形式被很多人利用, 只有没有加SMTP认证的邮箱服务器才可以进行匿名发送邮件。

    不知道是不是我水平太差的缘故,我觉得有了SMTP认证这一个栏坎,利用SMTP协议匿名邮件起码我 感觉 无法实现了 、、、、

     

    电子邮件格式:  包括信息头(一些SMTP命令)和信息体(邮件的内容) 

    我们在向服务器发送邮件的时候,需要通过SMTP协议进行  。。

    SMTP协议其实是我们利用socket进行一条一条的命令行的发送  的,并且收到命令后会返回 三位的响应码和一些响应信息, ,邮件内容和SMTP命令在客户机和服务器之间都是通过文本流的方式进行数据的传递的。

    实际编程中我们只需要利用套接字建立和服务器的链接之后,然后就发送SMTP命令就行了,这里我只讲述原理,开发的时候大家需要自己参考RFC以及相关的书籍,

    我也说不清,说实话也不明白。。。。嘿嘿

    简单的SMTP命令

    响应码

    展开全文
  • 本书完整而详细地介绍了TCP/IP协议是如何实现中给出了约500个图例,15 000行实际操作C...本书适用于希望理解TCP/TP协议如何实现人,包括编写网络应用程序程序员以及利用TCP/IP维护计算机网络的系统管理员。
  • TCPIP网络协议讲解

    2013-04-23 12:57:07
    本书适用于希望理解TCP/TP协议如何实现人,包括编写网络应用程序程序员以及利用TCP/IP维护计算机网络的系统管理员。 《TCP-IP详解卷三TCP事务协议,HTTP,NNTP和UNIX域协议》是“TCP/IP详解系列”延续。主要...
  • 网络协议分层

    2014-02-27 19:20:31
    关于TCP/IP协议有几层,待参考专业书籍。 ...1、开放系统互连参考模型OSI/RM:七层 ...2、TCP/IP 协议:四层--应用层、...因此往往采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 。

    关于TCP/IP协议有几层,待参考专业书籍。



    1、开放系统互连参考模型OSI/RM:七层


    2、TCP/IP 协议:四层--应用层、运输层、网络层和网络接口层。
    3、TCP/IP最下面的网络接口层并没有具体内容。因此往往采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 。


    展开全文
  • 一个侦探调查到有一个人被记录曾用过政府一台电脑,并总出入该图书馆,但是却没有足够证据证明该人为密文盗窃者,该侦探了解到该文件加密算法非常强大可抗击各种攻击,并调查了该政府内部网络协议,政府中...
  • 一本关于网络通信协议的书,有益于对于网络协议的了解和学习。适用于开发人员和初学者
  • 关于编程书籍

    2018-12-29 17:19:40
    计算机系统与网络 《图灵秘密:他生平、思想及论文解读》 《计算机系统概论》 《深入理解Linux内核》 《深入Linux内核架构》 《TCP/IP详解 卷1:协议》 《Linux系统编程(第2版)》 《Linux内核设计与实现...
  • 关于IPv6介绍书籍

    2009-08-28 09:56:59
    在本书中,I P用来指网际协议的各个版本,I P v 4是指1 9 9 8年及早些时候使用的I P。 I P v 6指的是由I n t e r n e t工程任务组( I E T F )制订的用来取代I P v 4的新的I P版本,该协议公布 在最近发表的IETF的RFC...
  • TCPIP协议实验指导

    2014-05-26 14:55:53
    网络通信技术实验,关于几种常见网络协议的实验,根据步骤做可以顺利完成,同时对这些协议及相关程序有新的认识
  • PPP 也定义了可扩展链路控制协议(Link Control Protocol),它(Link Control Protocol)使用验证协议磋商在链路上传输网络协议前验证链路对端。 这个文档定义了两种验证协议:密码验证协议(the Password ...
  • 网络协议——IPv6详解

    2008-12-29 16:34:22
    验证和安全性、对任意点播和组播的支持以及对相关协议的影响,同时还探讨了IPv4向IPv6过渡的策略和应 用。 本书内容由浅入深、语言精练易懂,为有经验的网络管理员和研究人员适应IP升级变化提供了关于IPv6 清楚而又...
  • 关于TCP协议的介绍的相关书籍已经太多太多,而且在搜索引擎中输入TCP关键字,也会有数以千计的结构展现你面前。但是笔者觉得没有经历过自己整理的东西永远都是别人的,虽然我们整理时可能只是把别人非常完善东西搬...
  • 由于本人属于菜鸟中菜鸟,所以,学习 lwip协议栈及STM32花费不少...后来 一边学 vb.net 、 一边学 lwip、 一边学硬件 (STM32),去图书馆发现 vb.net语言关于网络通信太少,但是,发现 c#.net 语言关于网络通...
  • 关于TCP、UDP方面知识,教科上都会有相关定义和解释都有,对应初学者而言并不容易理解,我认为主要原因是写得过于抽象,太深奥,不利于学习和传播,那么小鱼今天就带大家一起来聊聊关于TCP、UDP协议通俗化理解...
  • 本篇对于RIP中水平分割,毒性逆转,触发更新等机制如何发挥作用讲得很好。 ... 下面内容摘自笔者编著《网管员必读——网络基础》(第2版)一。 9.11.1 RIP路由协议及工作原理 RIP...
  • 计算机网络里面在第三次握手时候用服务器端公钥加密随机数,然后服务器端拿到之后生成相应主密钥。 自顶向下里面在第三次握手传递是主密钥。 都没有提及两次hello随机数,不知道是没提及还是他们认为...
  • 在前面《计算机网络与TCP/IP》栏目下已经介绍过一些关于TCP、UDP相关知识TCP/IP(三):传输层TCP与UDP,这里只是简单从UNIX网络编程角度介绍TCP、UDP协议。我们都知道UDP 缺乏可靠性、无连接,面向数据报 ...
  • TCP IP协议原理与应用原_第4版2014无书签.pdf TCP-IP详解.卷一:协议.rar TCP-IP详解.卷三:TCP事务协议,HTTP,NNTP和UNIX域协议.rar TCP-IP详解.卷二:实现.rar 密码编码学与网络安全_原理与实践_第5版2012无...
  • 很多招聘需求上都会要求熟悉TCP/IP协议、...很多关于协议的大部头都是非常枯燥的,我特意挑了比较友好的《图解TCP/IP》和《图解HTTP》,但看了一遍仍是云里雾里,找不到掌握了知识后的那种自信。所以得换一种思路...
  • 无连接则是说IP并不维护任何关于后续数据报状态信息,每个数据报都是独立。所以IP数据报可以不按序接收,每个数据报独立地进行路由。2.IP首部IP数据报格式: 普通IP首部为20字节.除非包含选项字段。网络...
  • linux网络内核合集01

    2015-10-27 11:17:26
    本合集是本人搜集的关于linux网络内核的书籍,都是经典,包含:(1)Linux网络体系结构:Linux内核中网络协议的设计与实现.chm (2)Linux网络内核分析与开发.pdf (3)嵌入式Linux网络体系结构设计与TCP/IP协议栈....
  • linux网络内核合集03

    2015-10-27 11:36:50
    本合集是本人搜集的关于linux网络内核的书籍,都是经典,包含:(1)Linux网络体系结构:Linux内核中网络协议的设计与实现.chm (2)Linux网络内核分析与开发.pdf (3)嵌入式Linux网络体系结构设计与TCP/IP协议栈....
  • linux网络内核合集07

    2015-10-27 11:53:00
    本合集是本人搜集的关于linux网络内核的书籍,都是经典,包含:(1)Linux网络体系结构:Linux内核中网络协议的设计与实现.chm (2)Linux网络内核分析与开发.pdf (3)嵌入式Linux网络体系结构设计与TCP/IP协议栈....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 861
精华内容 344
关键字:

关于网络协议的书