精华内容
下载资源
问答
  • 网络怎样连接读书笔记

    千次阅读 2018-06-12 00:22:27
    网络怎样连接读书笔记 计算机基础理论 第一章 浏览生成消息————探索浏览器内部 网络控制软件叫作**协议栈**。这个软件会将从浏览器接收到的消息打包,然后加 上目的地址等控制信息。协议栈会将包...

    网络是怎样连接的 读书笔记

    计算机基础理论

    第一章 浏览生成消息————探索浏览器内部

    网络控制软件叫作**协议栈**。这个软件会将从浏览器接收到的消息打包,然后加 上目的地址等控制信息。协议栈会将包交给网卡(负责以太网或无线网络通信的硬件)。然后,网卡会将包转换为电信号并通过网线发送出去。
    

    浏览器需要 向 DNS 服务器查询域名对应的 IP 地址

    *浏览器的第一步工作就是对 URL 进行解析。*
    http://www.lab.glasscom.com/dir/
    我们可以这样理解,以“/”结尾代表 /dir/ 后面本来应该有的文件名被 省略了
    
    http://www.lab.glasscom.com/
    这个 URL 也是以“/”结尾的,也就是说它表示访问一个名叫“/”的目录。而且,由于省略了文件名,所以结果就是访问 /index.html 或者 /default.htm 这样的默认文件了
    
    http://www.lab.glasscom.com/whatisthis 
    如果 Web 服务器上存在名为 whatisthis 的文件,则将 whatisthis 作为文件名来处 理;如果存在名为 whatisthis 的目录,则将 whatisthis 作为目录名来处理
    

    1 条请求消息中只能写 1 个 URI。如果需要获取多个文件,必须对每个文件单独发送 1 条请求。

    发送者发出的消息首先经过子网中的集线器,转发到距离发送者最近的路由器上。接下来路由器会根据消息的目的地判断下一个路由器的位置,然后将消息发送到下一个路由器。即消息再次经过子网内的集线器被转发到下一个路由器。
    
    IP 地址的主机号
    全 0:表示整个子网
    全 1:表示向子网上所有设备发送包,即“广播”
    

    Socket 库是用于调用网络功能的程序组件集合。
    根据域名查询 IP 地址时,浏览器会使用 Socket 库中的解析器。
    DNS 服务器会从域名与 IP 地址的对照表中查找相应的记录,并返回 IP 地址。
    向操作系统内部的协议栈发出委托时,需要按照指定的顺序来调用 Socket 库中的程序组件。

    连接的建立过程
    首先,服务器一方先创建套接字,然后等待客户端向该套接字连接管道。管道在连接时是由客户端发起的,但在断开时可以由客户端或服务器任意一方发起断开。

    收发数据的操作分为若干个阶段,可以大致总结为以下 4 个。
    (1)创建套接字(创建套接字阶段) 
    (2)将管道连接到服务器端的套接字上(连接阶段) 
    (3)收发数据(通信阶段) 
    (4)断开管道并删除套接字(断开阶段)
    

    套接字创建完成后,协议栈会返回一个描述符,应用程序会将收到的描述符存放在内存中

    描述符:应用程序用来识别套接字的机制
    描述符是用来识别不同的套接字的。应用程序是通过“描述符”这一类似号码牌的东西来识别套接字的。

    IP 地址和端口号:客户端和服务器之间用来识别对方套接字的机制

    解析器到底是用来干什么的呢?
    当需要根据域名查询 IP 地址的 时候向 DNS 服务器发送查询消息

    ARP 是根据已知 IP 地 址求出 MAC 地址

    1. http://www.nikkeibp.co.jp/ 中的 http 代表什么意思?
    答:http 协议
    
    2. 下面两个网址有什么不同?
    a. http://www.nikkeibp.co.jp/sample
    b. http://www.nikkeibp.co.jp/sample/
    答:a 中的 sample 代表文件名,b 中的 sample 代表目录名
    
    3. 用来识别连接在互联网上的计算机和服务器的地址叫什么?
    答:IP 地址
    
    4. 根据 Web 服务器的域名来查询 IP 地址时所使用的服务器叫什么?
    答: DNS 服务器
    
    5. 向 DNS 服务器发送请求消息的程序叫什么?
    答:解析器
    

    第二章 用电信号传输 TCP/IP 数据————探索协议栈和网卡

    像浏览器、邮件等一般的应用程序都是使用 TCP 收发数据的,而像 DNS 查询等收发较短的控制数据的时候则使用 UDP。

    协议栈是根据套接字中记录的控制信息来工作的。

    创建套接字时,首先分配一个套接字所需的内存空间,然后向其中写入初始状态。
    在调用 socket 创建套接字时,我们需要把服务器的 IP 地址和端口号等信息告知协议栈,这是连接操作的目的之一。
    客户端向服务器传达开始通信的请求, 也是连接操作的目的之一。
    之前我们讲过,连接实际上是通信双方交换控制信息(IP地址和端口号等)

    通信操作中使用的控制信息分为两类。
    (1) 头部中记录的信息
    (2) 套接字(协议栈中的内存空间)中记录的信息

    连接操作的第一步是在 TCP 模块处创建表示连接控制信息的头部
    通过 TCP 头部中的发送方和接收方端口号可以找到要连接的套接字。

    MTU:一个网络包的最大长度,以太网中一般为 1500 字节。 MSS:除去头部之后,一个网络包所能容纳的 TCP 数据的最大 长度。

    通过“序号”和“ACK 号”可以确认接收方是否收到了网络包

    网卡、集线器、路由器都没有错误补偿机制,一旦检测到错误 就直接丢弃相应的包
    如果某一个包被重复发送多次,接收方可以根据序号判断出这个包是重复的,因此并不会造成网络异常。

    接收方需要告诉发送方自己最多能接收多少数据,然后发送方根据这个值对数据发送操作进行控制,这就是滑动窗口方式的基本思路。

    在等待发送 ACK 号的时候正好需要更新窗口,这时就可以把 ACK 号和窗口更新放在 一个包里发送,从而减少包的数量。当需要连续发送多个 ACK 号时,也 可以减少包的数量,这是因为 ACK 号表示的是已收到的数据量,也就是 说,它是告诉发送方目前已接收的数据的最后位置在哪里,因此当需要连续发送 ACK 号时,只要发送最后一个 ACK 号就可以了,中间的可以全部省略。
    

    数据确认操作
    首先,协议栈会检查收到的数据块和 TCP 头
    部的内容,判断是否有数据丢失,如果没有问题则返回 ACK 号。然后,
    协议栈将数据块暂存到接收缓冲区中,并将数据块按顺序连接起来还原出
    原始的数据,最后将数据交给应用程序。

    数据收发操作的第一步是创建套接字。服务器一方的应用程序在启动时就会创建好套接字并进入等待连接的状态。客户端则一般是在用户触发特定动作,需要访问服务器的时候创建套接字。

    TCP 头部中包含序号,它表示当前发送的是第几个字节的数据。

    网络中有路由器和集线器两种不同的转发设备,它们在传输网络包时有着各自的分工
    (1)路由器根据目标地址判断下一个路由器的位置 (2)集线器在子网中将网络包传输到下一个路由
    
    实际上,集线器是按照以太网规则传输包的设备,而路由器是按照 IP 规则传输包的设备,因此我们也可以作如下理解:
    (1)IP 协议根据目标地址判断下一个 IP 转发设备的位置 (2)子网中的以太网协议将包传输到下一个转发设备
    

    TCP/IP 包包含如下两个头部:MAC 头部(用于以太网协议) (b)IP 头部(用于 IP 协议)

    集线器里有一张表(用于以太网协议的表),可根据以太网头部中记录的目的地信息查 出相应的传输方向
    
    路由器中有一张 IP 协 议的表,可根据这张表以及 IP 头部中记录的目的地信息查出接下来应该发 往哪个路由器
    

    IP 模块负责添加如下两个头部:
    (1) MAC 头部:以太网用的头部,包含 MAC 地址
    (2) IP 头部:IP 用的头部,包含 IP 地址

    无论要收发的包是控制包还是数据包,IP 对各种类型的包的收发操作都是相同的。
    IP 头部的“接收方 IP 地址”填写通信对象的 IP 地址。
    发送方 IP 地址需要判断发送所使用的网卡,并填写该网卡的 IP 地址。
    IP 模块根据路由表 Gateway 栏的内容判断应该把包发送给谁。
    如果路由表的设置正确,那么对方应该在同一子网,否则对方无法作出 ARP 响应,这时只能认为对方不存在,包的发送操作就会失败。

    以太网经历了数次变迁,但其基本的 3 个性质至今仍未改变,即
    (1)将包发送到 MAC 头部的接收方 MAC 地址代表的目的地,
    (2)用发送方 MAC 地址识别发送方
    (3)用以太类型识别包的内容

    网卡的 ROM 中保存着全世界唯一的 MAC 地址,这是在生产网卡时写入的。
    网卡中保存的 MAC 地址会由网卡驱动程序读取并分配给 MAC 模块。

    使用集线器的半双工模式以太网中,一台设备发送的信号会到达连接在集线器上的所有设备.遇到错误或者丢包也一概不管。因为 UDP 只负责单纯地发送包

    1.表示网络包收件人的接收方 IP 地址是位于 IP 头部还是 TCP 头部 中呢?
    答:IP 头部
    
    2. 端口号用来指定服务器程序的种类,那么它位于 TCP 头部还是 IP 头部中呢?
    答:TCP 头部
    
    3. 会对包是否正确送达进行确认的是 TCP 还是 IP 呢?
    答:TCP
    
    4. 根据 IP 地址查询 MAC 地址的机制叫什么?
    答:ARP
    
    5. 在收到 ACK 号之前继续发送下一个包的方式叫什么?
    答:滑动窗口方式
    

    第三章 从网线到网络设备————探索集线器、交换机和路由器

    集线器将信号发送给所有连接在它上面的线路。

    交换机端口的 MAC 模块不具有 MAC 地址。
    MAC 地址表主要包含两个信息,一 个是设备的 MAC 地址,另一个是该设备连接在交换机的哪个端口上。

    交换机根据 MAC 地址表查找 MAC 地址,然后将信号发送到相应的端口。
    收到包时,将发送方 MAC 地址以及其输入端口的号码写入 MAC 地址表中
    因此只要某个设备发送过网络包,它的 MAC 地址就会 被记录到地址表中。
    当交换机发现一个包要发回到原端口时,就会直接丢弃这个包。
    
    还有另外一种特殊情况,就是地址表中找不到指定的 MAC 地址。这 可能是因为具有该地址的设备还没有向交换机发送过包,或者这个设备一 段时间没有工作导致地址被从地址表中删除了。这种情况下,交换机无法 判断应该把包转发到哪个端口,只能将包转发到除了源端口之外的所有端 口上,无论该设备连接在哪个端口上都能收到这个包。因为发送了包之后目标设备会作出响应,只要返回了响应包,交换机就可以将它的地址写入地址表,下次也就不需要把包 发到所有端口了。
    

    使用双绞线时,发送和接收的信号线是各自独立的,因此在双绞线中信号不会发生碰撞。只要不用集线器,就可以避免信号碰撞了。

    交换机的全双工模式可以同时发送和接收信号

    路由器的各个端口都具有 MAC 地址和 IP 地址。

    交换机是通过 MAC 头部中的接收 方 MAC 地址来判断转发目标的,而路由器则是根据 IP 头部中的 IP 地址 来判断的。

    路由器会将接收到的网络包的接收方 IP 地址与路由表中的目标地址进行比较,并找到相应的记录。交换机在地址表中只匹配完全一致的记录,而路由器则会忽略主机号部分,只匹配网络号部分。
    打个比方,路由器在转发包的时候只看接收方地址属于哪个区, ×× 区发往这一边,×× 区发往那一边。
    路由器的端口都具有 MAC 地址,只接收与自身地址匹配的包,遇到不匹配的包则直接丢弃
    通过路由器转发的网络包,其接收方 MAC 地址为路由器端口的 MAC 地址

    路由器首先寻找网络号比特数最长的一条记录。网络号比特数越长,说明主机号比特数越短,也就意味着该子网内可分配的主机数量越少,即子网中可能存在的主机数量越少,这一规则的目的是尽量缩小范围。
    如果在路由表中无法找到匹配的记录,路由器会丢弃这个包,并通过 ICMPA 消息告知发送方。

    路由表中子网掩码为 0.0.0.0 的记录表示“默认路由”

    TCP 拆分数据的操作是在将数据装到包里之前进行的,换句话说,拆分好的一个数据块正好装进一个包里。

    路由器判断下一个转发目标的方法
    (1)如果路由表的网关列内容为 IP 地址,则该地址就是下一个转 发目标
    (2)如果路由表的网关列内容为空,则 IP 头部中的接收方 IP 地址就是下一个转发目标

    路由器也会使用 ARP 来查询下一个转发目标的 MAC 地址
    路由器将包的传输工作委托给交换机来进行
    IP(路由器)负责将包送达通信对象这一整体过程,而其中将包传输到下一个路由器的过程则是由以太网(交换机)来负责的。

    地址转换设备会随机选择一个空闲的端口。然后,改写前的私有地址和端口号,以及改写后的公有地址和端口号,会作为一组相对应的记录保存在地址转换设备内部的一张表中。
    
    对外只能使用一个公有地址的情况下,可以用不同的端口号来区别内网中的不同终端。
    对于从公司内网访问互联网的包,即便其发送方私有地址和端口号没有保存在对应表中也是可以正常转发的,因为用来改写的公有地址就是地址转换设备自身的地址,而端口号只要随便选一个空闲的端口就可以了,这些都可以由地址转换设备自行判断。
    然而,对于从互联网访问公司内网的包,如果在对应表中没有记录就无法正常转发。因为如果对应表中没有记录,就意味着地址转换设备无法判断公有地址与私有地址之间的对应关系
    
    1.局域网中使用的双绞线中为什么要将信号线缠绕在一起?
    答:为了抑制噪声的影响
    2. 将输入的信号广播到所有端口上的设备是交换机还是集线器?
    答:集线器
    
    3. 用来指定网络号和主机号比特数的值叫什么?
    答:子网掩码
    
    4. 将大网络包进行拆分的功能叫什么?
    答:分片
    
    5. 路由器的路由表中有时可以看到子网掩码为 0.0.0.0 的记录,这代
    表什么意思?
    答:默认路由
    

    第四章 通过接入网进入互联网内部————探索接入网和网络运营商

    PPPoE 是将 PPP 消息装入以太网包进行传输的方式
    ISP: Internet Service Provider 互联网服务提供商
    IXP: Internet eXchange Point 互联网交换点
    RFC: Request For Comment 请求评论
    P2P:peer to peer 对等连接方式
    IX: Internet eXchange 互联网交换中心
    BAS: 宽带接入服务器(具有身份认证、向客户端下发 IP 地址等配置信息的功能)
    PPP: point-to-point Protocol
    BGP: Border Gateway Proctol 边界网关协议
    PPPoE: point-to-point Proctol over Ethernet
    RADIUS: Remote Authentication Dial-in User Service 远程认证拨号用户服务
    RAS: Remote Access Server 远程访问服务器

    1.什么是接入网?
    答:用于连接网络运营商的线路
    
    2. 要使用 ADSL 服务,需要安装一个将电话信号和 ADSL 信号分开的设备,这个设备叫什么名字?
    答:分离器
    
    3. 和电话局距离越远,ADSL 的通信速率越低,为什么?
    答: 因为离电话局越远,信号越弱
    
    4. BAS(宽带接入服务器)与一般的路由器有什么不同?
    答:BAS 具有身份认证、向客户端下发 IP 地址等配置信息的功能
    
    5. 将多个运营商汇聚在一起相互连接的设备叫什么?
    答:IX
    

    第五章 服务器端的局域网中有什么玄机

    包过滤方式的防火墙可根据接收方 IP 地址、发送方 IP 地址、接收方端口号、发送方端口号、控制位等信息来判断是否允许某个包通过。

    当操作跨多个页面时,则不考虑 Web 服务器的负载,而是必须将请求发送到同一台 Web 服务器上。

    一些专门从事相关服务的厂商,他们来部署缓存服务器,并租借给 Web 服务器运营者。这种服务称为内容分发服务(DNS)

    动态页面是不能保存在缓存服务器上,只将静态部分保存在缓存中。

    1.现在主流的防火墙方式叫什么?
    答:包过滤方式
    
    2. 当防火墙需要确定应用程序种类时要检查什么信息?
    答:端口号
    
    3. 用于分担 Web 服务器负载,将访问分配到多台服务器上的设
    备叫什么?
    答:负载均衡器
    
    4. 部署在服务器端的代理是正向代理还是反向代理?
    答:反向代理
    
    5. 在互联网中部署多台缓存服务器,并将其租借给 Web 服务器
    运营者的服务叫什么?
    答:内容分发服务(CDS 或 CDN)
    

    第六章 请求到达 Web 服务器,响应返回浏览器

    可以通过端口号来区分服务器上的应用程序,所以一台服务器上可以同时运行多个服务器程序,不仅限于 Web 和 邮件。

    客户端与服务器的区别

    区别体现在如何调用 Socket 库上。
    首先,客户端的数据收发需要经过下面 4 个阶段。
    (1)创建套接字(创建套接字阶段) 
    (2)用管道连接服务器端的套接字(连接阶段) 
    (3)收发数据(收发阶段) 
    (4)断开管道并删除套接字(断开阶段)
    
    相对地,服务器是将阶段(2)改成了等待连接,具体如下。
    (1)创建套接字(创建套接字阶段) 
    (2-1)将套接字设置为等待连接状态(等待连接阶段) 
    (2-2)接受连接(接受连接阶段) 
    (3)收发数据(收发阶段) 
    (4)断开管道并删除套接字(断开阶段)
    

    一般来说服务器端都是处于等待包到达的状态,这时应用程序会暂停运行。在这个状态下,一旦客户端的包到达,就会返回响应包并开始接受连接操作。接下来,协议栈会给等待连接的套接字复制一个副本,然后将连接对象等控制信息写入新的套接字中。

    使用描述符来指代套接字的原因如下。
    (1)等待连接的套接字中没有客户端 IP 地址和端口号 (2)使用描述符这一种信息比较简单

    网卡的 MAC 模块将网络包从信号还原为数字信息,校验 FCS 并存入缓冲区
    网卡驱动会根据 MAC 头部判断协议类型,并将包交给相应的协议栈。

    协议栈的 IP 模块会检查 IP 头部
    (1) 判断是不是发给自己的;
    (2) 判断网络包是否经过分片;
    (3) 将包转交给 TCP 模块或 UDP模块。

    如果收到的是发起连接的包,则 TCP 模块会
    (1) 确认TCP 头 部的控制位 SYN;
    (2) 检查接收方端口号;
    (3) 为相应的等待连接套接字复制一个新的副本;
    (4) 记录发送方 IP 地址和端口号等信息。

    TCP 模块会对比该套接字中保存的数据收发状态和收到的包的 TCP 头部中的信息是否匹配,以确定数据收发操作是否正常。具体来说,就是根据套接字中保存的上一个序号和数据长度计算下一个序号,并检查与收到的包的 TCP 头部中的序号是否一致。如果两者一致,就说明包正常到达了服务器,没有丢失。这时,TCP 模块会从包中提出数据,并存放到接收缓冲区中,与上次收到的数据块连接起来。这样一来,数据就被还原成分包之前的状态。
    拼合数据块的操作在每次收到数据包时都会进行,而不是等所有数据全部接受完毕之后再统一拼合的。

    收到数据包时,TCP 模块会
    (1) 根据收到的包的发送方 IP 地址、发送方端口号、接收方 IP 地址、接收方端口号找到相对应的套接字;
    (2) 将数据块拼合起来并保存在接收缓冲区中;
    (3) 向客户端返回 ACK。

    Web 服务器的访问控制规则主要有以下 3 种
    (1)客户端 IP 地址
    (2)客户端域名
    (3)用户名和密码

    1.在包收发操作中,服务器和客户端的区别是什么?
    答:没有区别
    
    2. 当包到达服务器时,网卡会接收信号并通知 CPU,此时使用的机制叫什么?
    答:中断
    
    3. Web 服务器可以同时处理多个客户端的访问,这里利用了操作系统的什么功能?
    答:多任务和多线程
    
    4. 当需要对 Web 服务器的访问进行限制的时候,可以根据哪些条件来判断是否允许访问?
    答:(a)客户端 IP 地址;(b)客户端域名;(c)用户名和密码
    
    5. Web 服务器返回的数据包括文档、图片等多种类型,客户端如何判断返回数据的不同类型?
    答:原则上根据响应消息的 Content-Type 头部字段的值来判断
    
    展开全文
  • 网络怎样连接的》读书笔记

    千次阅读 2018-08-01 12:57:12
    简介:本书是是一本不错的计算机网络入门书籍,能够对网络有一个全面的认识,力荐!! 不过,本书内容没有较深的理论,所以对于一些深入的问题,还需进一步阅读其他专业书籍。  下面是根据自己的理解整理的思维...

    简介:本书是是一本不错的计算机网络入门书籍,能够对网络有一个全面的认识,力荐!! 不过,本书内容没有较深的理论,所以对于一些深入的问题,还需进一步阅读其他专业书籍。

     下面是根据自己的理解整理的思维导图(点击放大),以及相关补充知识。

     补充知识点


    第1章 浏览器生成消息

    •  1 条请求消息中只能写1个URI。如果需要获取多个文件,必须对每个文件单独发送1 条请求。
    • 协议栈:操作系统内部的网络控制软件,也叫“协议驱动”“TCP/IP 驱动”等。
    • 描述符:应用程序用来识别套接字的机制。
    • IP地址和端口号:客户端和服务器之间用来识别对方套接字的机制。

    第2章 协议栈、网卡

    TCP/IP软件采用分层结构
    •  创建套接字时,首先分配一个套接字所需的内存空间,然后向其中写入初始状态。
    • 所谓滑动窗口,就是在发送一个包之后,不等待ACK号返回,而是直接发送后续的一系列包。首先,接收方需要告诉发送方自己最多能接收多少数据,然后发送方根据这个值对数据发送操作进行控制,这就是滑动窗口方式的基本思路。
    滑动窗口与接收缓冲区
    •  查询MAC地址需要使用ARP:广播+ARP缓存。
    • 网卡的ROM 中保存着全世界唯一的MAC 地址,这是在生产网卡时写入的。会由网卡驱动程序读取并分配给MAC模块。
    • 网卡发送出去的包。
    网卡发送出去的包
    • 通知计算机的操作会使用一个叫作中断的机制。中断处理程序。
    • IP模块会通过ICMP消息将错误告知发送方。

    第3章 集线器、交换机、路由器

    • 路由器的各个端口都具有MAC地址和IP地址。
    • 路由器会忽略主机号,只匹配网络号。
    • 路由器与交换机的关系:IP(路由器)负责将包送达通信对象这一整体过程,而其中将包传输到下一个路由器的过程则是由以太网(交换机)来负责的。路由器将包的传输工作委托给交换机来进行。实际的路由器有内置交换机功能的。
    • 地址转换的基本原理是在转发网络包时对IP头部中的IP地址和端口号进行改写。 

    第4章 接入网、网络运营商

    • 所谓接入网,就是指连接互联网与家庭、公司网络的通信线路。

    第5章 防火墙、缓存服务器

    • 缓存服务器是一台通过代理机制对数据进行缓存的服务器。
    • 从客户端来看,缓存服务器就相当于Web服务器。从Web服务器来看,缓存服务器就相当于客户端。

    第6章 Web服务器

    • 等待连接的套接字。为这个套接字复制出新的套接字副本,并让客户端的套接字连接到这个副本上。

    最后,重磅图片!!(点击放大)

                                                 网络包的旅程


    展开全文
  • 网络包的旅程

    网络包的旅程

    展开全文
  • connect(<描述符>,<服务器IP地址和端口号,……>)
  • GET / HTTP/1.1 --> 请求行 Accept: */* --> 消息头
  • 笔记是建立在一定网络基础上的查缺补漏: 第一章浏览器生成消息 第一节:生成HTTP请求消息 浏览器是集合了多种客户端功能的一个综合性客户端软件, cgi是web服务器程度调用其他程度的规则所做的定义 。 没有...

    建议阅读对象:对网络有些了解,但是需要补充知识的。笔记是建立在一定网络基础上的查缺补漏:

    第一章浏览器生成消息

    第一节:生成HTTP请求消息

    浏览器是集合了多种客户端功能的一个综合性客户端软件,

    cgi是web服务器程度调用其他程度的规则所做的定义 。

    没有文件名,服务器是怎么知道访问哪个文件的呢?-默认文件

    我们会在server上设置好,文件名省略时默认返回的文件名。该名称根据服务器不同而不同,大多数是:index.html、default.html/

    域名后面的/是根目录

    URL是以域名结束,没有文件也没有/,是可以设置默认根目录下默认返回的文件,例如index.html

    URL是以/为截止,是可以设置默认返回文件的,

    url:http://www.baidu.com/是去找www.baidu.com域名解析的主机中默认的一个目录文件‘

    如果是http://www.baidu.com/aaa/,是去找aaa目录下的一个默认文件,

     

    1.2向DNS服务器查询web地址(20200831)

    通过路由器连接起来的子网,组成了一个大网络,这里的子网可以是由集线器连接起来的几台计算机,我们称它为子网,将子网通过路由器连接就形成了网络。

    网络内的所有设备都会被分配一个地址,该地址相当于现实中的“**号**室“,这里的号称为网络号,室称为主机号。这个地址的整体称为IP地址。

    ip地址=网络号(3字节)+主机号(1字节)

    主机号全部为0是表示整个组网,全部为1,表示向整个组网广播。主机号是ip地址的最后一个字节(8 个比特)

    与DNS服务器相对,电脑本地也要安装DNS客户端。负责域名解析的操作叫做解析器。

    socket库是用于调用网络功能的程序组件集合。

    域名解析的内部原理:控制流程转移。

     

    1.3:DNS服务器解析域名全民大行动

    域名+class+记录类型

    class:A:address

    MX:mail exchange

    一个DNS服务器可以存放多个域名,但是不可能存放所有的域名信息,所以域名解析是所有DNS的“全民大接力“。

    一个域名是不可分割的,一个域名下可以创建子级域,域名里,越向右边的域名越高级。

    根域名是.,子级域DNS服务器,是将自己的ip信息,注册到上级DNS服务器。

    DNS可以将本地没有的域名信息进行缓存,可以提高访问速度。例如CPU和内存之间、磁盘和内存之间的缓存。

    不过,为了避免信息不对,可以设置一个超时时间,超时后会删除该信息,重新拉取server的地址。

     

    1.4委托协议栈发送信息:

    套接字:client与server进行通信时,把数据通信想象称一个管道,建立管道的关键是,管道两端的出入口,这些出入口称之为套接字。

    收发数据大致分为4个阶段。

    P45。(20200831)

    展开全文
  • unix网络编程读书笔记

    2010-03-04 09:41:04
    unix网络编程读书笔记unix网络编程读书笔记unix网络编程读书笔记unix网络编程读书笔记unix网络编程读书笔记
  • <form id="Form" action="" method="post">…</form>
  • 软考网络工程师5天修炼读书笔记
  • 计算机网络读书笔记

    2013-11-04 21:17:08
    计算机网络第五版读书笔记,对其中一些重要内容进行了摘录!
  • connect(<描述符>, <服务器IP地址和端口号>, …)
  • 什么是计算机网络关于这一点有一个非常迷惑性的定义,所谓计算机网络应该是使用同一种技术连接起来的一组计算机结构,所以,我们通常认识下的互联网(Internet)并不是一种计算机网络,而Web (World Wide Web)也不是一...
  • 读书笔记

    2020-11-02 15:28:06
    这是一些读书笔记:Python黑帽子:黑客与渗透测试编程之道、改善python程序的91个建议、 CTF特训营、 程序是怎样跑起来的、 深入理解计算机系统、计算机网络自顶向下方法
  • 网络协议读书笔记OSI 7层模型 OSI 7层模型 通用的网络通信协议 TCP ( transmission control protocol ) 传输控制协议/ IP( internet protocol ) 协议 互联网协议 OSI 模型诞生于1984年( 比我早十年出生) 规定了...
  • unix网络编程-第三版读书笔记unix网络编程-第三版读书笔记
  • 计算机网络第六版的读书笔记,还算是比较清晰,记录的也比较详细。
  • 网络连接时应用的最基本的功能之一,Android系统对网络连接进行了封装,使得开发者能够更快的给应用增加网络功能。大多数网络连接的Android应用使用HTTP发送和接受数据,Android包括两个HTTP客户端:...
  • 软考网络工程师5天修炼读书笔记-附件资源
  • :open_book: 读书笔记 :slightly_smiling_face: :upside-down_face: 买过很多书,也打印过很多电子版的书籍和资料,断断续续的读,杂乱无章。心血来潮,想自己整理一下,希望可以坚持下去,不断学习,不断提升自己。...
  • 计算机网络和http权威指南 读书笔记

    千次阅读 2016-10-04 16:49:07
    计算机网络笔记 网络网络层向上提供无连接的,尽最大努力交付的数据报服务 网络层不提供数据质量承诺 物理层使用的中间设备叫转发器repeater 数据链路层叫网桥bridge 网络层叫路由器router 网络层以上叫网关...
  • 学习笔记
  • CCNA网络读书笔记

    2009-10-16 14:18:08
    CCNA网络小菜鸟笔记 第一章, 网际互连 把一个大的网络划分为一些小的网络就称为网络分段,这些工作由路由器,交换机和网桥来按成。 引起LAN通信量出现足赛的可能原因如下: 1. 在一个广播域中有太多的主机 2. 广播...
  • 网络相关读书笔记

    千次阅读 2019-09-03 23:18:41
    例如游戏服务器,SERVER需要对客户端连接进行会话管理,需要对客户端发送的数据通过协议进行合理解析。 TELNET,FTP,SMTP,HTTP,POP3等协议的请求和应答都是字符串。 SSH端口转发功能:POP3协议的加密 FTP使用...
  • 计算机网络(谢希仁版)读书笔记 .doc

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,686
精华内容 10,674
关键字:

网络是怎样连接的读书笔记