深入理解计算机操作系统——第11章:全球IP英特网
全球IP英特网
(1)每台英特网主机都运行实现TCPIP协议的软件。
(2)英特网的客户端和服务器混合使用套接字接口函数和Unix IO函数来进行通信。
(3)套接字函数典型的是作为陷入内核的系统调用来实现的,并调用各种内核模式的TCPIP函数。
(1)主机集合被映射成为一个32位的IP地址。
(2)这组IP地址被映射成为英特网域名的标识符。
(3)英特网上的主机进程可以通过连接和任何其他英特网主机的进程通信。
13.3.1 IP地址
(1)IP地址是一个32位的无符号整数,网络程序将IP地址存放到一个IP地址数据结构中。
(2)IP地址结构中存放的地址是以大端法存放的,即网络字节顺序存放的。即使主机存储顺序是小端法。
(3)unix提供下面函数来转换字节顺序
(4)IP地址通常用点分十进制来表示,下面的inet_aton函数和inet_ntoa函数来互相转化。
11.3.2 英特网域名
英特网定义了一组更加人性化的域名,将域名映射到IP地址的机制。域名是一串用句点分割的单词。
(1)域名集合形成一个层次结构,每个域名编码了它在这个层次结构中的位置。
(2)树的结点表示域名,反向到根的路径形成域名。
(3)子树又称子域。
(4)英特网定义了域名集合和Ip地址集合间的映射,现在这个由DNS(域名管理系统来维护)。
11.3.3 英特网连接
(1)英特网客户端和服务器通过连接上发送和接收数据流来通信
(2)从连接的一对进程上看,连接是点对点的
(3)从数据可以同时双向流动来看,连接是全双工的。
(4)可靠地
套接字:
(1)套接字是连接的一个端点。
(2)每个套接字都有相应的套接字地址,是由英特网地址和一个16位的整数端口组成,用 地址:端口 来表示。
(3)当客户端发送连接请求时,客户端的端口是由内核自动分配的。称为临时端口
(4)而服务器的套接字地址中的端口一般是某个知名端口,如web服务器80。
深入理解计算机操作系统——第11章:全球IP英特网的更多相关文章
- 深入理解计算机操作系统——第11章:CS模型,网络
网络编程: 11.1 客户端-服务器编程模型 (1)一个应用是由一个服务器进程和一个或多个客户端进程组成. (2)服务器管理某种资源,并且操纵这种资源来为客户端服务. CS模型: CS的基本操作是事务 ...
- 深入理解计算机操作系统——第10章:UNIX IO,打开,关闭,读写文件
系统级IO:输入输出是主存与外部设备(磁盘,终端,网络)之间拷贝数据的过程 输入:从IO设备拷贝数据到主存中 输出:从主存中拷贝数据到IO设备中 10.1 unix IO 所有的IO设备都被模型化为文 ...
- 深入理解计算机操作系统——12章:多进程,IO多路复用
三种并行的应用程序: 1. 基于进程的并发编程: 2. 基于IO多路复用的并发: 3. 基于线程的并发编程: 12.1 基于进程的并发编程 进程的优劣: (1)进程间共享文件表,但不共享用户地址空间, ...
- Linux就这个范儿 第11章 独霸网络的蜘蛛神功
Linux就这个范儿 第11章 独霸网络的蜘蛛神功 第11章 应用层 (Application):网络服务与最终用户的一个接口.协议有:HTTP FTP TFTP SMTP SNMP DNS表示层 ...
- 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群
高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...
- Linux内核设计(第一周)——从汇编语言出发理解计算机工作原理
Linux内核设计(第一周)——从汇编语言出发理解计算机工作原理 计算机工作原理 汇编指令 C语言代码汇编分析 by苏正生 原创作品转载请注明出处 <Linux内核分析>MOOC课程htt ...
- MySQL性能调优与架构设计——第11章 常用存储引擎优化
第11章 常用存储引擎优化 前言: MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.每一种存储引擎都有各自的特长,也都存在一定的短处. ...
- 第11章 Windows线程池(1)_传统的Windows线程池
第11章 Windows线程池 11.1 传统的Windows线程池及API (1)线程池中的几种底层线程 ①可变数量的长任务线程:WT_EXECUTELONGFUNCTION ②Timer线程:调用 ...
- 《TCP/IP详解卷1:协议》第11章 UDP:用户数据报协议-读书笔记
章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...
随机推荐
- 移除sql数据所有链接用户
use master; go declare @temp nvarchar(20) declare myCurse cursor for select spid from sy ...
- C# 图片打印杂谈
日常开头水一下,看了下上次博客,一年零八天了,啧啧,奢侈. 最近这个工作挺满意的,是我想要的发展方向,后续要做机器学习,现在得先把公司之前堆积的问题解决了. 谈人生到此结束,还是说正题吧.(感觉这标题 ...
- 30行代码消费腾讯人工智能开放平台提供的自然语言处理API
腾讯人工智能AI开放平台上提供了很多免费的人工智能API,开发人员只需要一个QQ号就可以登录进去使用. 腾讯人工智能AI开放平台的地址:https://ai.qq.com/ 里面的好东西很多,以自然语 ...
- VBA Promming入门教程——变量的使用
数据类型 VBA中的数据类型可分为两种 示例 String Sub Main Dim s as string s = "Hello" msgbox(s) End Sub Singl ...
- k8s集群之master节点部署
apiserver的部署 api-server的部署脚本 [root@mast-1 k8s]# cat apiserver.sh #!/bin/bash MASTER_ADDRESS=$1 主节点IP ...
- Qt中常用的类
QApplication 应用程序类 管理图形用户界面应用程序的控制流和主要设置 QLabel 标签类 提供 ...
- python⽤户登陆
⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化) count = 3 while count < 4: count -= 1 username = input(' ...
- MySQL-05 用户管理
学习目标 权限表及其用法 账户管理 权限管理 访问控制 权限表 MySQL权限表存放在MySQL数据库里,由mysql_install_db脚本初始化.这些MySQL权限表分别为user.db.pro ...
- JavaScript中通过原型添加方法,解决数据共享问题,节省内存空间
涉及知识点:(1)原型的引入(2)构造函数.原型对象和实例对象之间的关系(3)__proto__和prototype的理解 直接举例:在自定义构造函数创建对象时,因为创建的对象使用的不是同一个方法,所 ...
- 去BAT,你应该要看一看的面试经验总结
我去年12月份从上一家公司离职,一直到今年3月份,基本上都在面试中度过来的. 先交代下背景:坐标上海,做技术开发,我本人面试的职位是linux服务器开发,最倾向的职位是服务器开发主程或技术经理.我本人 ...