重拾计网-第三弹 你不知道的计算机网络的秘密

 🎉欢迎您来到我的MySQL基础复习专栏

☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹
✨博客主页:小小恶斯法克的博客
🎈该系列文章专栏:重拾计算机网络
🍹文章作者技术和水平很有限,如果文中出现错误,希望大家能指正🙏
📜 感谢大家的关注! ❤️

ps:本文章的图片来源都是来自于湖科大教书匠的视频,声明:仅供自己复习,里面加上了自己的理解

这里附上视频链接地址:1.4 计算机网络的定义和分类_哔哩哔哩_bilibili

​​​

 🚀计算机网络的定义和分类

 计算机网络的精确定义并未统一。换句话说,全世界没有一个对计算机网络的公认的唯一定义。

计算机网络的最简单定义:计算机网络是一些互相连接的、自治的计算机的集合

✨互连是指计算机之间可以通过有线或无线的方式进行数据通信。

✨自治是指独立的计算机,它有自己的硬件(包括主机和外设)和软件,可以单独运行使用。

✨集合是指至少需要两台计算机

思考:该图是否是一个计算机网络 

很显然,这不是计算机网络。因为图中所示的各终端机只是具有显示和输入设备的终端。而并不是自治的计算机。因此,这只是一个运行分时系统的大型机系统。

🚀计算机网络的定义

✨计算机网络主要是由一些通用的、可编程的硬件互连而成的。而这些硬件并非专门用来实现某一特定目的(例如传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据。并能支持广泛的和日益增长的应用

✨该定义表明,计算机网络所连接的硬件并不限于一般的计算机,而是包括了智能手机等智能硬件

✨该定义还表明,计算机网络并非专门用来传送数据。而是能够支持很多种应用。包括今后可能出现的各种应用。

🚀计算机网络的分类

我们可以从不同的角度对计算机网络进行分类。

✨按交换技术分类。可以分为电路交换网络、报文交换网络、分组交换网络

✨按网络的使用者分类,可以分为公用网,专用网

✨按传输介质分类,可以分为有线网络和无线网络

✨按网络的覆盖范围分类。可以分为广域网WAN、城域网MAN、局域网LAN、各域网PAN

✨按拓扑结构分类,可以分为总线型网络、新型网络、环形网络和网状型网络

✨公用网

是指电信公司出资建造的大型网络,公用的意思就是所有愿意按电信公司的规定交纳费用的人都可以使用这种网络。因此,公用网也可称为公众网。

✨专用网

是指某个部门为本单位的特殊业务工作的需要而建立的网络,这种网络不向本单位以外的人提供服务,例如军队、铁路、电力等系统均有本系统的专用网。

✨有线网络包括双绞线网络、光纤网络等

✨而无线局域网所使用的WiFi技术目前应用比较普遍。

✨广域网的覆盖范围通常围几十公里到几千公里。可以覆盖一个国家、地区,甚至横跨几个州,因而有时也称为远程网。广域网是因特网的核心部分,其任务是为核心路由器提供远距离例如跨越不同的国家的高速连接,互联分布在不同区域的城域网和局域网。

✨城域网的覆盖范围一般是一个城市,可跨越几个街区,甚至整个城市。其作用距离为5到50公里,城域网通常作为城市骨干网,互联大量企业、机构和校园局域网。近几年,城域网已开始成为现代城市的信息服务基础设施,为大量用户提供接入和各种信息服务,并有趋势将传统的电信服务、有线电视服务和互联网服务融为一体。

✨局域网一般用微型计算机或工作站通过高速通信线路相连,速率通常在十兆比特每秒以上,但地理上则局限在较小的范围内,如一个实验室、一幢楼或一个校园内,距离一般在一公里左右,局域网通常由某个单位单独拥有、使用和维护。在局域网发展的初期,一个学校或工厂往往只拥有一个局域网,现在局域网已被非常广泛的使用,一个学校或企业大都拥有许多个互联的局域网,这样的网络通常称为校园网或企业网

✨个域网是个人区域网络的简称,它不同于上述网络。不是用来连接普通计算机的,而是在个人工作的地方。把属于个人使用的电子设备。例如便携式计算机、打印机、鼠标、键盘、耳机等用无线技术连接起来的网络。因此也常称为无线个人区域网WPAN,其覆盖范围大约为十米。需要注意的是,若中央处理机之间的距离非常近,例如仅一米的数量级,甚至更小。则一般就称之为多处理机系统,而不称它为计算机网络。

✨总线型网络,使用单根传输线把计算机连接起来,它的优点是建网容易,增减节点方便,节省线路。缺点是重负载时通讯效率不高,总线任意一处出现故障,则全网瘫痪。

✨新型网络是将每个计算机都以单独的线路与中央设备相连,中央设备早期呢是计算机,后来呢是集线器。现在一般是交换机或路由器,这种网络拓扑便于网络的集中控制和管理,因为端用户之间的通信必须经过中央设备,缺点是成本高,中央设备对故障敏感。

✨环形网络是将所有计算机的网络接口连接成一个环,最典型的例子是令牌环局域网。环可以是单环,也可以是双环。环中信号是单向传输的

✨网状型网络,一般情况下,每个节点至少有两条路径与其他节点相连,多用在广域网中。其优点是可靠性高,缺点是控制复杂,线路成本高。需要注意的是,以上四种基本的网络拓扑还可以互联为更复杂的网络。 

 


希望对你有帮助! 

  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
CGI(Common Gateway Interface)是一种标准,用于在Web服务器上运行外部程序。 CGI程序可以与Web服务器进行通信,从而让Web服务器获取外部程序生成的数据,并将其返回给客户端浏览器。在这个过程中,CGI程序可以读写文件、处理表单数据、查询数据库等。 文件上传是Web应用程序中非常常见的一种功能。上传文件的过程涉及到客户端浏览器将文件数据发送到Web服务器,Web服务器将文件保存到指定的目录中,并将文件相关的信息存储到数据库中。CGI程序可以处理上传文件的请求,并实现文件的保存和数据库的更新等操作。 cgicc是一个C++库,用于处理CGI程序中的表单数据。它提供了一组简单易用的API,可以方便地读取和处理表单数据,并且支持文件上传等功能。使用cgicc可以极大地简化CGI程序的开发。 下面是一个使用cgicc处理文件上传的示例: ```cpp #include <iostream> #include <fstream> #include <cgicc/Cgicc.h> #include <cgicc/HTTPHTMLHeader.h> #include <cgicc/HTMLClasses.h> using namespace std; using namespace cgicc; int main() { Cgicc cgi; const_file_iterator file = cgi.getFile("file"); if(file != cgi.getFiles().end()) { string filename = file->getName(); string filepath = "/var/www/upload/" + filename; ofstream ofs(filepath.c_str(), ios::out | ios::binary); file->writeToStream(ofs); ofs.close(); cout << HTTPHTMLHeader() << endl; cout << HTMLDoctype(HTMLDoctype::eStrict) << endl; cout << html().set("lang", "en").set("dir", "ltr") << endl; cout << head() << title("File Upload Result") << head() << endl; cout << body() << h1("File Upload Result") << endl; cout << p("File " + filename + " uploaded successfully!") << endl; cout << body() << html(); } else { cout << HTTPHTMLHeader() << endl; cout << HTMLDoctype(HTMLDoctype::eStrict) << endl; cout << html().set("lang", "en").set("dir", "ltr") << endl; cout << head() << title("File Upload Result") << head() << endl; cout << body() << h1("File Upload Result") << endl; cout << p("No file uploaded!") << endl; cout << body() << html(); } return 0; } ``` 在这个示例中,我们使用cgicc库处理表单数据,并通过getFile函数获取上传的文件。如果getFile返回的迭代器不等于getFiles返回的迭代器末尾,说明有文件上传。我们可以通过getName获取上传文件的名称,并指定文件保存的路径。然后,我们使用writeToStream将文件写入到指定的文件路径中。 最后,我们输出一个HTML响应,显示文件上传的结果。如果有文件上传成功,输出“File uploaded successfully!”,否则输出“No file uploaded!”。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

p-宸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值