《图解HTTP》阅读笔记---第一章网络基础
第一章、网络基础
TCP/IP:
----------传输控制协议Transmission Control Protocol / 网络协议Internet Protocol
是一种用于Internet(因特网)的通信协议。在其内部包含了以下协议标准:
---TCP---传输控制协议:应用程序之间通信(可靠的)
---UDP---用户数据包协议:应用程序之间的简单通信(不可靠的)
---IP---网际协议:计算机之间的通信
---ICMP---因特网消息控制协议:针对错误和动态
---DHCP---动态主句配置协议:针对动态寻址
TCP/IP分层:
应用层:(FTP文件传输协议;DNS域名系统;HTTP协议)决定了向用户提供应用服务时通信的活动---数据
传输层:(TCP传输控制协议;UDP用户数据报协议)提供处于网络连接中的两台pc的数据传输方式---报文
网络层:(IP网际协议)处理在网络上流通的数据包,为其选择传输路线---MAC地址
数据链路层/网络接口层:处理连接网络的硬件部分(os,硬件设备驱动,网卡/网络适配器/NIC,光纤)
=====================传输数据时,发送端一层层封装如下=========================
原始HTTP报文(分割后的HTTP数据)+++TCP报文(封装TCP首部)+++IP数据包(封装IP首部)+++
+++网络架构(封装以太网首部)
===================================================================
IP(IP协议,不是IP地址):传输数据包给目的地址
IP协议包括IP地址<指明了节点被分配到的地址>及MAC地址<指网卡所属的固定地址>
要点:ARP协议(地址解析协议);路由选择
TCP---传输控制协议
提供可靠的字节流服务(将大块数据分割成报文段为单位的数据包进行管理);能够确认数据最终是否发送到对方手里。
要点:通信请求,确切地址,三次握手策略,全双工的通信,占用双方通信线路,直到被一方或双方关闭
=========================三次握手=========================
1、发送端发送标有SYN的数据包
2、接收端接收后会返回标有SYN/ACK的数据包
3、发送端确认后将发送带有ACK的数据包
=======================================================
DNS---域名解析服务
提供通过域名查找IP地址,或逆向从IP地址反查域名的服务
URI---统一资源标识符&&URL---统一资源定位符
URL就是由某个协议方案表示的资源的定位标识符,协议方案就是指资源所用的协议类型名称
URL用字符串标识某一互联网资源,URL表示资源的地点,URL是URI的子集
===============================绝对URI=================================
协议方案名+登录信息/认证(o)+服务器地址+服务器端口号(o)+带层次的文件路径+查询字符串(o)+片段标识符(o)
(o)==(option)==(可选)
例如 http://+user:pass+@www.example.jp/192.161.1/[0:0:0:0:0:0:0:1]+:80+/dir/index.html+?uid=1+#ch1
《图解HTTP》阅读笔记---第一章网络基础的更多相关文章
- [Python笔记][第一章Python基础]
2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...
- 《Interest Rate Risk Modeling》阅读笔记——第一章:利率风险建模概览
目录 第一章:利率风险建模概览 思维导图 一些想法 第一章:利率风险建模概览 思维导图 一些想法 久期向量模型类似于研究组合收益的高阶矩. 久期向量模型用的是一般多项式表达高阶久期,试试正交多项式? ...
- Python笔记·第一章—— Python基础(一)
一.Python的简介 1.Python的由来与版本 1.1 python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文 ...
- Camel In Action 阅读笔记 第一章 认识Camel 1.1 Camel 介绍
1.1 Camel 介绍 Camel 是一个为了您的项目集成变得高效有趣的集成框架,Camel 项目在2007年初开始的,相对来说它还比较年轻,但它已然是一个非常成熟的开源项目,它所使用的是Apach ...
- 《UNIX环境高级编程》(APUE) 笔记第一章 - UNIX基础知识
1 - UNIX基础知识 Github 地址 1. 操作系统 可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.通常将这种软件称为 内核 (kernel) .( Linux 是 GN ...
- Redis实战阅读笔记——第一章
Redis 实战 中文版 的20-21页看的人郁闷死了,最后看英文版才明白意思,哎,我理解能力差成这样了 其中,图 1-12 有错误,草,这个是英文版的错--应该是group:programming
- Web程序设计笔记-第一章:基础知识
1,Web服务器 (1)Web服务器操作 Web浏览器通过向服务器发送URL来与Web服务器进行通信.URL可以指定两种不同资源中的一种:某个文件或者某个程序. Web客户机和Web服务器之间所有的通 ...
- python3黑帽子渗透笔记第二章--网络基础
1 先来看看不可少的socket模块 (1)tcp_client.py 在渗透测试过程中,创建一个tcp客户端连接服务,发送垃圾数据,进行模糊测试等. (2)udp_client.py 2 nc工具的 ...
- Android开发艺术探索笔记——第一章:Activity的生命周期和启动模式
Android开发艺术探索笔记--第一章:Activity的生命周期和启动模式 怀着无比崇敬的心情翻开了这本书,路漫漫其修远兮,程序人生,为自己加油! 一.序 作为这本书的第一章,主席还是把Activ ...
随机推荐
- 使用Fiddler进行iOS APP的HTTP/HTTPS抓包
Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获各种智能手机发出的HTTP/HTTPS请求.Fiddler能捕获IOS设备发出的请求,比如IPhone, IPad, MacBook. ...
- PDM生成数据库-0设置表名和字段名中不带双引号
如果PDM直接导出脚本的话,所有的表和字段都会被加上双引号,非常不方便,去除双引号的办法: Database->Edit Current DBMS在弹出窗体中第一项General中找到 Scri ...
- Solaris11修改主机名
在Solaris10中,主机名的修改是通过修改相关的配置文件实现的.在Solaris11中,主机名的配置信息已经转移到SMF配置库中,因此修改主机名的方式与Solaris10完全不同.以下是修改Sol ...
- 类型:.net;问题:asp.net window验证;结果:细说ASP.NET Windows身份认证
细说ASP.NET Windows身份认证 阅读目录 开始 认识ASP.NET Windows身份认证 访问 Active Directory 在ASP.NET中访问Active Directory ...
- #关于 OneVsRestClassifier(LogisticRegression(太慢了,要用超过的机器)
#关于 OneVsRestClassifier #注意以下代码中,有三个类 from sklearn import datasets X, y = datasets.make_classificati ...
- css 文件上传按钮美化
转自:http://zixuephp.net/article-85.html 思路:在一个div里面添加一个图片用作按钮再添加一个input file 文件上传,把文件上传按钮设置透明度为0,绝对定位 ...
- C# 设置程序session过期时间
服务器设置: 如果服务器上点击站点没有ASP这一项: 下方 角色服务 添加角色服务 安装完毕重新打开iis 点击站点 就可以看到ASP这个选项了 程序webconfig配置: <system.w ...
- 思考题-关于CSS(转)
dl, dt, dd三个标签浏览器默认margin值多少?是否有标签默认文字粗体? line-height:150%和line-height:1.5的区别是? float为何会让外部容器高度塌陷?这是 ...
- iOS 地图(自定义地位图标)
#import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...
- [gist]Android SHA-1
参考:http://stackoverflow.com/questions/5980658/how-to-sha1-hash-a-string-in-android 代码: