《用TCP/IP进行网络互连》读书笔记
《用TCP/IP进行网络互连》读书笔记
第2章,基本网络技术
- 网络通信分类:基于连接的通信(connection-oriented),基于非连接的通信(connectionless)
- 基于连接的通信能够保证数据传输的安全性。
- 为什么要用基于非连接的应用:对于大文件,不可能一次全部传送完成,需要分包处理。
- 用于Internet的底层硬件技术:Ethernet(IEEE 802.3),Wi-Fi(IEEE 802.11),ZigBee(IEEE 802.15.4),Wide Area Poinit-to-Point Networks(SONET)
- Ethernet主要特点:支持广播,Best-Effort Delivery Semantics(硬件并不保证此次能够正常传输,而且,当传输出现错误后,也不会通知发送者)
- 每台电脑有一个或多个网卡,每个网卡被分配唯一固定的MAC地址。MAC地址是对网卡而言的,与电脑无关。MAC地址有48-bit(6个字节)。
- 对于底层硬件数据,通常使用帧(Frame),而不使用包(Packet)。
- Frame中的源地址和目的地址都指的是6字节的MAC地址。
- Ethernet帧结构(由于CRC由硬件执行,所以未包含4字节的CRC):
- 虚拟局域网(VLAN,Virtual Local Area Network):如,公司内可以总成不同的VLAN,不同的VLAN,享有不同的访问权限。在VLAN内部,定义了Broadcast domain,只有在相同的Broadcast domain内可以传输数据。其实,可以认为一个VLAN就是一个独立的物理连接网络。
- 桥接(Bridging),用于将小的网络组成更大的网络,此时网络的结构是,多台计算机通过交换机(Switch)组成独立的网络,各个独立的网络通过桥接器,构成更大的网络。
- 桥接的原理是将帧数据(Frame)的副本,从一个网络,传递给其他的网络,数据本省并不发生任何变化。这样,使跨网段的数据传输成为可能。
- 桥接器会记录Frame的MAC地址,当桥接器在网络间传输Frame时,会首先根据自己的MAC记录,查找发送端和接收端是否在同一网络下,这样能够实现最优的传输。
- 自适应以太网桥接器(adaptive Ethernet bridge)连接不同的以太网,当Frame在以太网直接传输时,首先由桥接器进行判断,以避免不必要的跨网络传输。
第3章,Internet概念和结构模型
《用TCP/IP进行网络互连》读书笔记的更多相关文章
- csapp读书笔记-并发编程
这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...
- CSAPP 读书笔记 - 2.31练习题
根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1) 属于第一种情况 sum = x ...
- CSAPP读书笔记--第八章 异常控制流
第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...
- CSAPP 并发编程读书笔记
CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《C#本质论》读书笔记(18)多线程处理
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
- C#温故知新:《C#图解教程》读书笔记系列
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
- C#刨根究底:《你必须知道的.NET》读书笔记系列
一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...
- Web高级征程:《大型网站技术架构》读书笔记系列
一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...
随机推荐
- 测试人员如何使用Git部署测试环境
Git是分布式的版本控制系统. 作为一名Git的小白使用者,一开始接触很懵逼,因为总担心自己一不小心误操作影响代码仓库的代码,网络上关于Git的使用多从开发的角度,很少有人从测试的角度来介绍Git的使 ...
- ssh: Could not resolve hostname git.*****-inc.com : Temporary failure in name resolution fatal: The remote end hung up unexpectedly
问题出现的情景:使用git pull拉取开发的代码到测试服务器,报错: ssh: Could not resolve hostname git.****-inc.com : Temporary fai ...
- python爬虫(4)——正则表达式(一)
在前几篇文章中我们使用了python的urllib模块,做了一些访问网页的工作.现在介绍一个非常强大的工具--正则表达式.在讲述正则的时候,我参考了<精通正则表达式(第三版) ---Je ...
- Maven编译问题
Maven构建的Project默认使用JDK1.5进行编译,要想使用JDK1.8进行编译,最好在项目的POM文件中加上以下的字段. <build> <plugins> < ...
- go get报错unrecognized import path “golang.org/x/net/context”…
今天安装gin框架,首先下载gin,命令如下:go get github.com/mattn/go-sqlite3 结果报错: package golang.org/x/net/context: un ...
- Lua内存分析工具
最近给公司写了一个lua内存分析工具,可以非常方便的分析出Lua内存泄露问题,有图形化界面操作,方便手机端上传快照等功能 内存分析我是在c语言端写的,也有人写过lua端的分析工具,也蛮好用的,不过lu ...
- 洛谷 P4016负载平衡问题【费用流】题解+AC代码
洛谷 P4016负载平衡问题 P4014 分配问题[费用流]题解+AC代码 负载平衡问题 题目描述 GG 公司有n个沿铁路运输线环形排列的仓库,每个仓库存储的货物数量不等.如何用最少搬运量可以使 n ...
- 高性能javascript笔记
----------------------------------------------------------- 第一章 加载和执行 ------------------------------ ...
- lamp环境部署脚本
关于lamp环境的安装脚本,直接复制即可使用 注:apache2.2.X 版本和apache2.4.X版本 本人推荐兼容性版本安装 apache2.4.25 + apr1.5.2 + apr-util ...
- Yii2 日志处理
最近开发一个新的PHP项目,终于脱离了某框架的魔爪(之前被折磨的不轻),选用了江湖中如雷贯耳的Yii2框架.每个项目代码的运行,日志是必不可少的,在开发中踩了一遍Yii2日志管理的坑,看过很多网上对Y ...