




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IntroductiontoComputerSystems24thLecture,Dec.12,2013XiangqunChen,JunlinLuChapter11NetworkingHowtosetupanetworkconnectionandawebserverbyprogramming?WhatiscomputernetworkInternetandaclient-serverHostandcomputerNetworkGlobalIPProgrammer’sviewofEvolutionofInternet=web上网:Hao123BaiduInternet=client-AClient-Server4.Client
Clientsends3.Serversends
Note:clientsandserversareprocessesrunningonhosts(canbethesameordifferenthosts)Mostnetworkapplicationsarebasedontheclient-serverAserverprocessandoneormoreclientServermanagessomeServerprovidesservicebymanipulatingresourceforServeractivatedbyrequestfromclient(vendingmachineNetworkforcommunicationbetween通信、服务socialnetworkcomputerImplementationofhumansocietyindigital……Internetandaclient-serverHostandcomputerNetworkGlobalIPProgrammer’sviewofEvolutionofNetworkComputerAnetworkisahierarchicalsystemofboxesandwiresorganizedbygeographicalproximitySAN(SystemAreaNetwork)spansclusterormachineSwitchedEthernet,QuadricsQSW,LAN(LocalAreaNetwork)spansabuildingorEthernetismostprominentWAN(WideAreaNetwork)spanscountryorAninternetwork(internet)isaninterconnectedsetofTheGlobalIPInternet(uppercase“I”)isthemostfamousexampleofaninternet(lowercase“i”)Let’sseehowaninternetisbuiltfromthegroundLowestLevel:Ethernet100
100Ethernetsegmentconsistsofacollectionofhostsconnectedbywires(twistedpairs)toahubLocal:SpansroomorfloorinaOperations:HubslavishlycopieseachbitfromeachporttoeveryotherportBridges/routersbecamecheapenoughtoreplacetheNextLevel:BridgedEthernet 100X1001100Y100 Spansbuildingor BridgescleverlylearnwhichhostsarereachablefromwhichportsandthenselectivelycopyframesfromporttoportConceptualViewofForsimplicity,hubs,bridges,andwiresareoftenshownasacollectionofhostsattachedtoasinglewire:NextLevel:MultipleincompatibleLANscanbephysicallyconnectedbyspecializedcomputerscalledroutersTheconnectednetworksarecalledan LAN
LANLAN1andLAN2mightbecompletelydifferent,totallyincompatible(e.g.,EthernetandWifi,802.11*,T1-links,DSL,LogicalStructureofanSendpacketsfromsourcetodestinationbyhoppingthroughnetworksInternetandaclient-serverHostandcomputerNetworkGlobalIPProgrammer’sviewofEvolutionofWhatisaPre-agreedSmile=开心Cry=悲伤点头=yes 摇头=noHumanWhat'stheSpecificmsgsSpecificactionstakenwhenmsgsreceived,orothereventsTheNotionofaninternetQuestion:HowisitpossibletosendbitsacrossincompatibleLANsandWANs?protocolsoftwarerunningoneachhostandsmoothsoutthedifferencesbetweenthedifferent邮局(因为邮局有统一的协议、规则Implementsaninternetprotocol(i.e.,setofgovernshowhostsandroutersshouldcooperatewhentransferdatafromnetworktonetworkTCP/IPistheprotocolfortheglobalIPWhatDoesaninternetProtocolProvidesanamingscheme(即设定地址AninternetprotocoldefinesauniformformatforhostEachhost(androuter)isassignedatleastoneofinternetaddressesthatuniquelyidentifiesProvidesadeliverymechanism(如邮政投Aninternetprotocoldefinesastandardtransferunittobedelivered(packet)PacketconsistsofheaderandHeader:containsinfosuchaspacketsize,sourceanddestinationaddressesPayload:containsdatabitssentfromsourceTransferringDataOveran
Host Host
LAN1
LAN2
FH:LANframeheader
WeareglossingoveranumberofimportantWhatifdifferentnetworkshavedifferentmaximumframesizes?(segmentation)数据包大小不同怎么办?Howdoroutersknowwheretoforwardframes?路由器怎么知道HowareroutersinformedwhenthenetworktopologyThese(andother)questionsareaddressedbytheareaofsystemsknownascomputernetworkingInternetandaclient-serverHostandcomputerNetworkGlobalIPProgrammer’sviewofEvolutionofGlobalIPMostfamousexampleofanBasedontheTCP/IPprotocolIP(Internetprotocol)
Providesbasicnamingschemeandunreliabledeliveryofpackets(datagrams)fromhost-to-UsesIPtoprovideunreliabledatagramdelivery
UsesIPtoprovidereliablebytestreamsfromprocess-to-overAccessedviaamixofUnixfileI/OandfunctionsfromsocketsinterfaceHardwareandSoftwareofanInternet
BasicInternetInternetbackbone:collectionofrouters(nationwideorworldwide)connectedbyhigh-InternetExchangePoints(IXP):routerthatconnectsmultiplebackbones(oftenreferredtoasAlsocalledNetworkAccessPointsRegionalnetworks:smallerbackbonesthatcoversmallergeographical(e.g.,citiesorPointofpresencePOP):machinethatisconnectedtotheInternetServiceProvidersISPs):providedial-upordirectaccesstoInternetConnectionoftenbypass
Regional Big
ISP(for Small Pgh DCInternetandaclient-serverHostandcomputerNetworkGlobalIPProgrammer’sviewofEvolutionofAProgrammer’sViewoftheHostsaremappedtoasetof32-bitIPThesetofIPaddressesismappedtoasetofidentifierscalledInternetdomainnames79ismappedtoAprocessononeInternethostcancommunicatewithaprocessonanotherInternethostoveraconnectionIP32-bitIPaddressesarestoredinanIPaddressIPaddressesarealwaysstoredinmemoryinnetworkbyteorder(big-endianbyteorder)Trueingeneralforanyintegertransferredinapacketheaderfromonemachinetoanother.E.g.,theportnumberusedtoidentifyanInternet/*/*Internetaddressstructure*/structin_addr{unsignedints_addr;/*networkbyteorder(big-endian)Usefulnetworkbyte-orderconversionfunctions(“l”=32bits,“s”=16htonl:convertuint32_tfromhosttonetworkbyteorderhtons:convertuint16_tfromhosttonetworkbyteorderntohl:convertuint32_tfromnetworktohostbyteorderntohs:convertuint16_tfromnetworktohostbyteorderDottedDecimalByconvention,eachbyteina32-bitIPaddressisrepresentedbyitsdecimalvalueandseparatedbyaperiodIPaddress16进制100x8002C2F2=FunctionsforconvertingbetweenbinaryIPaddressesanddotteddecimalstrings:inet_ntoa:IPaddressinnetworkbyteorder→dotteddecimalinet_aton:dotteddecimalstring→IPaddressinnetworkbyte“n”denotesnetwork“a”denotesapplicationIPAddressIP(V4)Addressspacedividedinto0NetHost10NetHost0NetHost10NetHost110NetHost1110Reservedfor1111ClassClassBClassCClassDClassENetworkIDWritteninformn=numberofbitsinhostE.g.,CMUwrittenas/16,北大BClassBUn-routed(private)IP InternetDomain First-leveldomain Second-leveldomain
Third-leveldomain
DomainNamingServiceTheInternetmaintainsamappingbetweenIPaddressesanddomainnamesinahugeworldwidedistributeddatabasecalledDNS域名服务器Conceptually,programmerscanviewtheDNSdatabaseasacollectionmillionsofhostentry/*/*DNShostentrystructure*/structhostent{/*officialdomainnameofhost**h_aliases;/*null-terminatedarrayofdomainnames/*hostaddresstype(AF_INET)/*lengthofanaddress,inbytes**h_addr_list;/*null-terminatedarrayofin_addrstructsFunctionsforretrievinghostentriesfromgethostbyname:querykeyisaDNSdomaingethostbyaddr:querykeyisanIPPropertiesofDNSHostEachhostentryisanequivalenceclassofdomainnamesandIPaddresses每个主机记录=若干名字+地址EachhosthasalocallydefineddomainnamewhichalwaysmapstotheloopbackaddressDifferentkindsofmappingsareSimplecase:one-to-onemappingbetweendomainnameandIPmapstoMultipledomainnamesmappedtothesameIPandbothmaptoMultipledomainnamesmappedtomultipleIPmapstomultipleIPSomevaliddomainnamesdon’tmaptoanyIPAProgramThatQueriesintmain(intargc,char**argv){/*argv[1]isadomainname*/char**pp; /*ordotteddecimalIPaddr*/structin_addraddr;structhostent*hostp;/*pointertoaDNShostentrystructureif(inet_aton(argv[1],&addr)!=hostp=Gethostbyaddr((constchar*)&addr, 42tohostp=printf("officialhostname:%s\n",hostp-//printhostnamefor(pp=hostp->h_aliases;*pp!=NULL;pp++)printf("alias:%s\n",*pp);//printallaliasfor(pp=hostp->h_addr_list;*pp!=NULL;{addr.s_addr=((structin_addr*)*pp)->s_addr;printf("address:%s\n",inet_ntoa(addr));}//printall}UsingDNSlinux>./dnsofficialhostname:address0linux>./dnsofficialhostname:ANGELSHARK.ICS.CS.CMU.EDUaddress:1linux>./dnsofficialhostname:QueryingDomainInformationGroper(dig)providesascriptablecommandlineinterfacetoDNSlinux>linux>dig+linux>dig+short-x1linux>dig+InternetClientsandserverscommunicatebysendingstreamsofbytesoverconnections:什么是互联网连接?AsocketisanendpointofaSocketaddressisanIPaddress:port
IPAportisa16-bitintegerthatidentifiesaEphemeralport:AssignedautomaticallyandtemporarilyonclientwhenclientmakesaconnectionrequestWell-knownport:Associatedwithsomeserviceprovidedbyaserver(e.g.,port80isassociatedwithWebservers)Aconnectionisuniquelyidentifiedbythesocketaddressesofitsendpoints(socketpair)PuttingitallAnatomyofanInternetClientsoc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国留学游学行业竞争格局及投资战略研究报告
- 2024-2029年中国玻璃釉电容器行业市场前瞻与投资战略规划分析报告
- 中国钢件齿轮项目投资可行性研究报告
- 2025年湖南农业大学017经济学院025100金融报录数据分析报告初试+复试
- 沥青搅拌机投资建设项目立项报告
- 2025年保健品研发质量保证协议范本
- 2025版中介机构厂房租赁合同范本(含税费)
- 2025年精密压铸件行业深度研究分析报告
- 硅铁项目可行性分析报告
- 2025年度高品质装饰材料供应商合作合同
- 历史类常识经典考试题100题带答案(能力提升)
- 水利水电工程建设用地设计标准(征求意见稿)
- 《了解纹样》参考课件
- 小学信息技术-第8册全册-6年级下-电子工业出版社
- 健康生活的五大要素
- JTG∕T F30-2014 公路水泥混凝土路面施工技术细则
- 篆刻学全套课件
- GB 1886.375-2024食品安全国家标准食品添加剂氢氧化钙
- 物业员工晋升述职报告
- 建设工程施工专业分包合同(GF-2003-0213)
- 耳鼻喉科各项规章制度
评论
0/150
提交评论