Python攻城的成长————网络编程

今日学习目标
文章目录二、网络编程简介 三、OSI七层协议 四、互联网相关专业名词(局域网、广域网、交换机、路由器) 五、TCP与UDP协议 总结
学习内容一、 软件开发架构 1.什么是软件开发架构
程序员在编写软件的时候应该遵循的架构设计
2.软件开发架构的分类
在进行软件开发时,通常会在两种基本架构中进行选择,即C/S架构和B/S架构 。
3.两种架构的优缺点二、网络编程简介
网络编程最主要的工作就是在发送端把信息通过规定好的协议进行组装包,在接收端按照规定好的协议把包进行解析,从而提取出对应的信息,达到通信的目的 。中间最主要的就是数据包的组装,数据包的过滤,数据包的捕获,数据包的分析,当然最后再做一些处理,代码、开发工具、数据库、服务器架设和网页设计这5部分你都要接触 。
1.学习网络编程的目的/结果
网络编程的本质是两个设备之间的数据交换 。其实就是把一个设备中的数据发送给另外一个设备,然后接受那个设备反馈的数据 。比如C/S 和B/S架构,都体现了这种关系,都是基本上都是请求响应式的 。不过模式有些不同 。而我们做的就是基于网络通信的原理,编写这种网络应用程序 。
2.网络编程发展史
该技术源于美国军方后续转为民用
实际应用:
军方想要实现不同计算机之间数据交互
没有网络编程技术的时候只能拿U盘拷贝并携带
为了跨区域交互数据所以发明了网络编程
3.互联网协议
不同计算机之间要想实现无障碍交互,除了需要有物理链接介质之外还需要一套公有的标准(OSI七层协议)
三、OSI七层协议 1.什么是OSI七层协议?
OSI是一个开放性的通信系统互连参考模型,它是一个定义得非常好的协议规范 。OSI模型有7层结构,每层都可以有几个子层 。OSI的7层从上到下分别是 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 ;其中高层(即7、6、5、4层)定义了应用程序的功能,下面3层(即3、2、1层)主要面向通过网络的端到端,点到点的数据流 。
2.各层功能四、互联网相关专业名词(局域网、广域网、交换机、路由器) 局域网
是指在某一区域内由多台计算机互联成的计算机组 。一般是方圆几千米以内 。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能 。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成 。
广域网
交换机
交换是按照通信两端传输信息的需要,用人工或设备自动完成的方法,把要传输的信息送到符合要求的相应路由上的技术的统称 。交换机根据工作位置的不同,可以分为广域网交换机和局域网交换机 。广域的交换机就是一种在通信系统中完成信息交换功能的设备,它应用在数据链路层 。交换机有多个端口,每个端口都具有桥接功能,可以连接一个局域网或一台高性能服务器或工作站 。实际上,交换机有时被称为多端口网桥 。
路由器
路由器()是互联网的枢纽,是连接英特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送数据 。
作用在OSI模型的第三层,提供了路由与转发两种重要机制
五、TCP与UDP协议
tcp和udp都是工作再传输层,用于程序之间传输数据的 。数一般包含:文件类型,视频类型,jpg图片等 。
TCP协议
流式协议、可靠协议