第一章、网络基础
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》阅读笔记---第一章网络基础的更多相关文章

  1. [Python笔记][第一章Python基础]

    2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...

  2. 《Interest Rate Risk Modeling》阅读笔记——第一章:利率风险建模概览

    目录 第一章:利率风险建模概览 思维导图 一些想法 第一章:利率风险建模概览 思维导图 一些想法 久期向量模型类似于研究组合收益的高阶矩. 久期向量模型用的是一般多项式表达高阶久期,试试正交多项式? ...

  3. Python笔记·第一章—— Python基础(一)

    一.Python的简介 1.Python的由来与版本 1.1 python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文 ...

  4. Camel In Action 阅读笔记 第一章 认识Camel 1.1 Camel 介绍

    1.1 Camel 介绍 Camel 是一个为了您的项目集成变得高效有趣的集成框架,Camel 项目在2007年初开始的,相对来说它还比较年轻,但它已然是一个非常成熟的开源项目,它所使用的是Apach ...

  5. 《UNIX环境高级编程》(APUE) 笔记第一章 - UNIX基础知识

    1 - UNIX基础知识 Github 地址 1. 操作系统 可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.通常将这种软件称为 内核 (kernel) .( Linux 是 GN ...

  6. Redis实战阅读笔记——第一章

    Redis 实战 中文版 的20-21页看的人郁闷死了,最后看英文版才明白意思,哎,我理解能力差成这样了 其中,图 1-12 有错误,草,这个是英文版的错--应该是group:programming

  7. Web程序设计笔记-第一章:基础知识

    1,Web服务器 (1)Web服务器操作 Web浏览器通过向服务器发送URL来与Web服务器进行通信.URL可以指定两种不同资源中的一种:某个文件或者某个程序. Web客户机和Web服务器之间所有的通 ...

  8. python3黑帽子渗透笔记第二章--网络基础

    1 先来看看不可少的socket模块 (1)tcp_client.py 在渗透测试过程中,创建一个tcp客户端连接服务,发送垃圾数据,进行模糊测试等. (2)udp_client.py 2 nc工具的 ...

  9. Android开发艺术探索笔记——第一章:Activity的生命周期和启动模式

    Android开发艺术探索笔记--第一章:Activity的生命周期和启动模式 怀着无比崇敬的心情翻开了这本书,路漫漫其修远兮,程序人生,为自己加油! 一.序 作为这本书的第一章,主席还是把Activ ...

随机推荐

  1. Dev控件GridControl实现CheckBox列和ComBox列

    1.在sql语句中添加空白行,如select c1,c2 null c3 from xxx; 2.将sql语句查询结果与gdc绑定CmmFrm.BestFitGridViewColumnsWidth( ...

  2. Solaris10上如何识别新增加的HDLM LUN

    先在磁盘阵列上将新加LUN映射给主机组,然后在光纤交换机上增加相关zone信息.以下是Solaris10上需要执行的操作步骤. 在Solaris10上重新扫描磁盘 -bash-3.2# cfgadm ...

  3. 类型:NodeJs;问题:默认IE的编码为utf8;结果:IE不能自动选择UTF-8编码解决办法

    在Windows操作系统上使用IE作为浏览器时.常常会发生这样的问题:在浏览使用UTF-8编码的网页时,浏览器无法自动侦测(即没有设定“自动选 择”编码格式时)该页面所用的编码.即使网页已经声明过编码 ...

  4. JVM知识点总览

    jvm 总体梳理 jvm体系总体分四大块: 类的加载机制 jvm内存结构 GC算法 垃圾回收 GC分析 命令调优 当然这些知识点在之前的文章中都有详细的介绍,这里只做主干的梳理 这里画了一个思维导图, ...

  5. PHP通过加锁实现并发情况下抢码功能

    本文基于php语言使用加锁实现并发情况下抢码功能,特定时间段开放抢码并不允许开放的码重复: 需求:抢码功能 要求: 1.特定时间段才开放抢码: 2.每个时间段放开的码是有限的: 3.每个码不允许重复: ...

  6. js面试题知识点全解(一原型和原型链)

    1.如何准确判断一个变量是数组类型2.写一个原型链继承的例子3.描述new一个对象的过程4.zepto(或其他框架)源码中如何使用原型链知识点:1.构造函数2.构造函数-扩展3.原型规则和示例4.原型 ...

  7. SQL serve 数据库--视图、事物、分离附加、备份还原

    视图是数据库中的一种虚拟表,与真实的表一样,视图包含一系列带有名称的行和列数据.行和列数据用来自定义视图的查询所引用的表,并且在引用视图时动态生成.  视图只能用来查询,不能增删改:不允许出现重复列 ...

  8. 290. Word Pattern 单词匹配模式

    [抄题]: Given a pattern and a string str, find if str follows the same pattern. Here follow means a fu ...

  9. Blender 工具使用—–准星

    Blender 工具使用-–准星 移动准星 直接按鼠标左键 将准星放置在坐标原点 快捷键Shift + C 将准星放置到指定位置 比如下面这个位置: 按Shift + S快捷键组合,弹出一个工具栏,选 ...

  10. php学习笔记-多维数组

    多维数组就是有一个数组,它里面的每个元素又是一个数组. <?php $stuff =array('food'=>array('apple','orange'),'book'=>arr ...