文章目录
网络编程
引子
假如有两个脚本,foo.py,bar.py,分别运行,都可以正常运行,但是现在想从两个程序间传递一个数据
- 同一台电脑
- 创建一个文件,将foo.py的数据写入文件中,bar.py从文件中读取数据
- 不同电脑间
- 该怎么去做
软件开发架构
C/S架构
C/S即Client和Server —>客户端和服务器端架构
B/S架构
B/S即Browser和Server—>浏览器端和服务器端架构
什么是网络
网络就是一种辅助双方或者多方能够连接在一起的工具
伴随着网络发展,人们使用了很多通信方法,有些已不再使用,现在使用最广泛的是TCP/IP
(Transmission Control Protocol / Internet Protocol)。
TCP/IP是标准的协议,其可以使世界范围内的计算机通过Internet或本地网络通信
TCP/IP事实上是一些协议(protocols)的合集。当前大多数使用中的通信都使用TCP协议。
Internet是在一些共享的线路上发送数据’的。例如:在您的计算机上也许同时运行着几个应用程序,如Web浏览器、通讯软件等程序,而您只须通过一条单一的线路来连接互联网。上面所有的程序都共享这个连接,简单地说,用户往往不会觉察到这个共享的发生。
目的
-
使用网络把多方连接在一起,然后,进行数据传输
-
为了让不同电脑的软件可以互相传递数据,借助网络的功能
网络编程的定义
让不同电脑中软件能够进行数据传递,即网络中不同主机进程间的通信
地址
1.生活中的地址与标识
不同的网络中,采用唯一的标识来区分不同的主体,比如车牌号、建筑物地址、电话号码、员工编号等等
一台电脑怎么找到很多电脑中的一台呢?
警察怎么找到嫌疑犯的?
2.ip地址的作用
ip地址:用来在网络中标记一台电脑,比如192.168.1.1;在同一网络中是唯一的。
同一网络:好比班级编号,球队编号。
同一网络:例如同一个局域网, 一个教室里。
3.IP地址分类
目前ip主要分为两种