Posts

Showing posts from July, 2018

对象导论(Java)

//本文涉及一些概念 面向对象语言的五个基本特性 万物皆为对象 程序是对象的集合,它们通过发送消息来告知彼此所需要做的 每个对象都有自己的由其他对象所构成的储存 每个对象都有其类型 某一特定类型的所有对象都可以接收同样的消息 对象的概念: 对象具有状态、行为和标识(也就是 内部数据、方法、内存中唯一的地址) 接口(对象的方法) 接口确定了对某一特定对象所能发出的请求 访问控制的原因 让客户端程序员无法触及他们不应该触及的部分 允许库设计者可以改变类内部的工作方式而不用担心会影响到客户端程序员 单根继承结构 终极基类的名字是——Object 好处: 保证所有的对象具备某些功能 使垃圾回收器(GC)的实现变得容易的多 选择不同容器(集合)的原因 不同容器提供了不同类型的接口和外部行为 不同容器对于某些操作具有不同的效率 //接口List所带来的抽象,把容器之间进行转换时对代码产生的影响降到最小限度 客户端编程 插件 脚本语言          //脚本语言可以解决客户端编程中所遇到的大约80%的问题 Java .Net C# 服务器端编程 CGI(由Perl、Python、C++编写) Servlet(及其衍生物JSP)

传输层概述

Image
本文将一些运输层的知识要点整合,以便回顾 运输层概述 作用: 运输层实现端到端的通信(主机进程之间的通信) 功能: 复用: 指发送方不同的应用进程都可以使用同一个运输层协议传送数据 分用: 指接收方在剥去报文的首部后能够把这些数据正确交付目的应用进程 与网络层的区别: 网络层为主机之间提供逻辑通信 运输层为应用进程之间提供端到端的逻辑通信 协议端口号(端口): 运输层用一个16位的端口号来标志一个端口 //注意:端口号只具有本地意义 16位的端口号允许有65535个不同的端口号 分类: 1.服务器端使用的端口号: 熟知端口号(系统端口号)0-1023                 //HTTP 80 登记端口号 1024-49151 2.客户端使用的端口号: 49152-65535 由于这类端口号仅在客户进程运行时才动态选择,因此又叫做 短暂端口号 运输层的两个主要协议 用户数据报协议UDP(UDP用户数据报) 传输控制协议TCP(TCP报文段) 用户数据报协议UDP: UDP: 无连接                        //即发送数据之前不需要建立连接 尽最大努力交付 面向报文                    //UDP对应用层交下来的报文既不合并,也不拆分,而是保留这些报文的边界。也就是说,应用层交给UDP多长的报文,UDP就照样发送,即一次发送(交付)一个报文。因此应用程序必须选择合适大小的报文。 没有拥塞控制            //因此网络出现的拥塞不会使源主机的发送速率降低 支持一对一、一对多、多对一多对多的交互通信 首部开销小                //8字节 UDP首部格式: 首部字段只有 8 个字节,包括源端口、目的端口、长度、检验和。12 字节的伪首部是为了计算检验和临时添加的。 源端口                //源端口号,需要对方回信时使用。不需要时可全为0 目的端口              //目的端口号,在终点交付报文时必须使用 长度                    //UDP用户数据报的长度,其最小值是8(仅有

网络层概述

Image
本文将一些网络层的知识要点整合,以便回顾 网络层的服务 网络层向上只提供: 简单灵活的 无连接的 尽最大努力交付的 虚电路服务 数据报服务(√) 这么做的 好处 是:网络造价低,运行方式灵活、且可以适应多种应用 网际协议IP 概述 :使用 IP 协议,可以把异构的物理网络连接起来,使得在网络层看起来好像是一个统一的网络。 好处 :尽管互连在一起的网络的硬件地址体系各不相同,但IP层抽象的互联网却屏蔽了下层这些很复杂的细节。只要我们在网络层上讨论问题,就能使用统一的、抽象的IP地址研究主机和主机或路由器之间的通信。 问题 :能不能让大家都使用相同的网络?这样可使网络互连变得比较简单。 回答 :不行,没有一种单一的网络能够适应所有用户的需求。 与IP协议配套使用的协议 地址解析协议 ARP(Address Resolution Protocol) 网际控制报文协议 ICMP(Internet Control Message Protocol)  网际组管理协议 IGMP(Internet Group Management Protocol) 网络互连的中间设备 物理层:转发器(repeater)  数据链路层:网桥(bridge) 以太网交换机(switch)  网络层:路由器(router) 在网络层以上:网关(gateway) IP地址 关于IP地址需要注意的是: 全0::=“这个” 全1::=“所有的” 网络号全0代表“ 本网络 ” 网络号为127(即 0111 1111)保留供本地软件做 环回测试 主机号全为0代表“本主机所连接到的 单个网络地址 ” 主机号全为1代表“本网络上的 所有主机 ” 同一个局域网上的主机或路由器的IP地址中的网络号必须是一样的 IP地址的编址方法所经历的三个历史阶段: 分类的IP地址 子网的划分 构成超网 分类的IP地址: (ABC类)IP地址 ::= {<网络号>,<主机号>}             // 注 :“::=”表示“定义为” 网络号: 它标志主机或路由器所连接到的网络,且网络号在整个互联网范围内必须是