Basic Infrastructure for Electronic Business on the Internet

95
Basic Infrastructure Basic Infrastructure for Electronic Business for Electronic Business on the Internet on the Internet Authors: Miroslava Mitrovic ([email protected]) Veljko Milutinovic ([email protected])

description

Basic Infrastructure for Electronic Business on the Internet. Authors: Miroslava Mitrovic ([email protected]) Veljko Milutinovic ([email protected]). Network. A network is a group of computers and peripherals connected together by some medium The connection can be - PowerPoint PPT Presentation

Transcript of Basic Infrastructure for Electronic Business on the Internet

  • Basic Infrastructure for Electronic Business on the InternetAuthors:Miroslava Mitrovic ([email protected])Veljko Milutinovic ([email protected])

  • NetworkA network is a group of computers and peripheralsconnected together by some mediumThe connection can be direct (through a cable) or indirect (through a modem)The different devices on the networkcommunicate with each otherthrough a predefined set of rules (protocol)

  • Network HardwarePhysically connects computers in the network togetherMain hardware components:NodesCommunication equipment Additional componentsTopology

  • NodesNetwork node (computer, printers, routers)Computers in network can be used as work stations or servers or bothPC computers need NIC (Network Interface Card) to be able to be part of LAN (Local Area Network)Different standards, different network cards! (Ethernet, Token Ring, ARC net)

  • Communication equipmentCables : (coaxial cables, fiber-optic cables, twisted pairs)Wiring centers : (HUB , concentrator, MAU (Multi station Access Units))Intranetwork links : (connectors, transceivers, repeaters)Internetwork links : (bridges, gateways, routers, switches) Wireless components

  • Additional ComponentsPeripherals :(printers, fax machines, modems, cd readers) Safety devices : UPS (Uninterruptible Power Supply), SPS (Standby Power Supply)Network tools

  • TopologyDefines rules for connecting network nodes Logical topology differs from physical topology!Logical topology defines rules for transmitting information's (bus, ring, star)Physical topology defines rules for electrical connection components in network

  • Topology

  • Topology

  • Network SoftwareEnables using hardware for communication and exchanging informationProtocols (set of rules) give formulas for passing messages, specifying the details of message formats, and for describing how to handle error conditions

  • InternettingConnecting many disparate physical networks and make them function as a coordinate unitInternet technology hides the details of network hardware and permits computers to communicate independent of their physical network connection

  • Internetting

  • InternetInternet is network of all networksInterconnected computer networks that communicate, usually via TCP/IPInternet and internetSet of application programs that use the network to carry out useful communication tasks (users point of view) No one owns the Internet!

  • Internet architectureHow are networks interconnected to form a internet work?Computers that interconnect two networks and pass packets from one to the other are called internet gateways or internet routers

  • Internet architecture

  • Internet architecture

  • Internet architectureGateways provide all interconnections among physical networksUsually minicomputersGateways route packets based on destination network, not on destination host!

  • Internet architecture

  • Internet architecture

  • Open SystemsArchitecture is not secretThe definition applies equally well to software and hardwareUNIX-classic example for an open software platformOpen system networking:network based on well-known and understood protocol Three most popular services:File Transfer Electronic mailRemote login

  • The ISO OSI-RMInternational Organization for StandardizationOpen System Interconnection Reference ModelISO has developed an architecture that defines seven layers of network protocol

  • Grouping of OSI Layers

  • Upper Layers Application/Presentation/SessionApplications orientedPresents the interface to the userDont care how data gets to the application!

  • Middle LayerTransportSeparate application oriented upper layers from network oriented lower layers

  • Lower LayersNetwork/Data Link/PhysicalOriented toward data transmissionPackages, routes, verifies and transmits datagramsType of data for application doesn't matterHas no application dependencies !

  • Communication in OSI-RM

  • Application LayerHighest layer in the OSI reference modelConcerned with the users view of the networkHandles network transparency, resource allocation and problem partitioningSends data and program tasks to the presentation layer,which is responsible for coding data from application layer in the appropriate form

  • Presentation LayerThe second highest layer in the OSI reference modelConverts network data to application formatPerforms function as text compression , code or format conversion to try to smooth out differences between hostsServes application layer, uses session layer

  • Session LayerThe third highest layer in the OSI reference modelSynchronized data exchange between upper and lower layersManages the current connection, or session, between two computersHandles security and creation of the sessionEstablishing connectionCloses connectionUses the transport layer to establish a connection between processes on different hostsUsed by the presentation layer

  • Transport LayerThe middle layer in the OSI reference modelUses the network layer to provide a virtual, error-free, point-to-point connection so that host A can send messages to host B and they will arrive uncorrupted and in the correct orderHides details necessary to actually make a connection between two computersEstablishes and dissolves connections between hostsUsed by the session layer

  • Network LayerThe third lowest layer in the OSI reference modelDetermines addresses Responsible for routing packets across the networkEstablishing logical link between two nodesUsed by the transport layer, uses the data link layer

  • Data Link LayerThe second lowest layer in the OSI reference modelSplits data into frames for sending on the physical layerReceives acknowledgment framesPerforms error checking and retransmission Provides an error free virtual channel to the network layerSplit into an upper sublayer Logical Link Control (LLC)and lower sublayer Media Access Control (MAC)

  • Physical LayerThe lowest layer in OSI modelTransmits dataHow bits are passed over the network medium, what control signals are used, and the mechanical properties of the network itself (cable size, connector, and so on)Only layer in which actual communication occurUsed by the data link layer

  • Data Transfer over the Internet

  • OSI vs. TCP/IP

  • The TCP/IP protocol familyTCPUDPIPICMPRIPOSPFARPDNSRARPBOOTPFTPTelnetEGPGGPIGPBGPNFSNISRPCSMTPSNMP

  • TransportTransmission Control Protocol (TCP): connection-based servicesUser Datagram Protocol (UDP): connectionless services

  • RoutingInternet Protocol (IP): handles transmission of information Internet Control Message Protocol (ICMP): handles status messages for IP Routing Information Protocol (RIP): determines routing Open Shortest Path First (OSPF):alternate protocol for determining routing

  • Network AddressesAddress Resolution Protocol (ARP): determines addresses Domain Name System (DNS): determines addresses from machine names Reverse Address Resolution Protocol (RARP): - determines addresses

  • User ServicesBoot Protocol (BOOTP): starts up a network machine File Transfer Protocol (FTP): transfers files Telnet: allows remote logins

  • Gateway ProtocolsExterior Gateway Protocol (EGP): transfers routing information for external networks Gateway-to-Gateway Protocol (GGP): transfers routing information between gateways Interior Gateway Protocol (IGP): transfers routing information for internal networks Border Gateway Protocol (BGP)newer than EGP, used within an autonomous network

  • OthersNetwork File System (NFS): enables directories on one machine to be mounted on another Network Information Service (NIS): maintains user accounts across networks Remote Procedure Call (RPC): enables remote applications to communicate Simple Mail Transfer Protocol (SMTP): transfers electronic mail Simple Network Management Protocol (SNMP): sends status messages about the network

  • DatagramBasic unit of data send thought an internetMoving packets between routers and/or hostsConsists of a header followed by the dataHeader: information necessary to move the packetacross the InternetConnectionless transport mechanism

  • Datagram

  • Datagram

  • Datagram

  • Datagram

  • Internet AddressesGlobally accepted method of identifying computersEach host on a TCP/IP internet is assigned a unique 32-bit address that is used in all communication with that hostMust not be confused with physical addresses!Each address is a pair (netid, hostid), where netid identifies a network,and hostid identifies a host on that networkIn practice, each IP address must have one of the first three forms shown in the picture that follows

  • Internet Addresses

  • Internet Addresses

  • Internet AddressesThe IP address is expressed in dotted decimal notation (DDN) by taking the 32 binary bits and forming 4 groups of 8 bits, each separated by a dot 10.4.8.2 is a class A address10 is the DDN assigned network number.4.8 are (possibly) user assigned subnet numbers.2 is the user assigned host number172.16.9.190 is a class B address172.16 is the DDN assigned network number.9 is the user assigned subnet number.190 is the user assigned host number

  • Internet AddressesHost: any attached device on a subnet, including PCs, mainframes and routersMost hosts are connected to only one network,and they have a single IP addressRouters are connected to more than one network and they can have multiple IP addressesProblem: IP type of addressing defines connection,not host!Problem: what when an organization which has a class C address finds that they (.org) need to upgrade to class B

  • DNS The Domain Name System Converts symbolic node name to IP addressUses distributed databaseNetwork Information Center (NIC) maintains namesand network gateway addressesName Resolver on each network tries to complete address from own databaseExamines Name Server for full NIC database if unsuccessful resolution

  • ARP - Address Resolution Protocol Allows host to find the physical address of a target host on the same physical network, given only the targets IP addressIt does this by sending out an ARP broadcast packet containing both the source and destination IP addressThe broadcast is media-dependantFor Ethernet LANs the broadcast address is a packet whose destination address bits are all `1'

  • ARP - Address Resolution ProtocolAll stations on the LAN receive this address, but only one host is able to recognize its own IP addressIt replies, thereby giving the original host its physical address.

  • ARP - Address Resolution Protocol

  • ARP - Address Resolution Protocol

  • RARP - Reverse Address Resolution ProtocolHow does the diskless machine, one without access to secondary storage,determines its IP address at system startup?A diskless machine uses RARP to obtain its IP address from a server

  • RARP - Reverse Address Resolution Protocol

  • RARP - Reverse Address Resolution Protocol

  • IP - Internet ProtocolDefines unreliable, connectionless delivery mechanismIP provides three important definitions: - Defines the basic unit of data transfer used throughout a TCP/IP internet - Performs routing function, choosing a path over which data will be sent - Includes a set of rules that embody the idea of unreliable packet delivery

  • ICMP - Internet Control Message ProtocolIntegral part of IPAllows gateways to send error or control messagesto other gateways or hostsProvides communication between the Internet Protocol software on one machine and the Internet Protocol Software on anotherOnly reports error conditions to the original source!ICMP message is encapsuled in an IP datagram

  • ICMP-The Internet Control Message Protocol

  • ICMP-The Internet Control Message Protocol

  • Type field

  • UDP - User Datagram ProtocolConnectionless protocolProvides the primary mechanism that application programs use to send datagramsto other application programsProvides protocol ports used to distinguish among multiple programs executing on a single machineUses IP to transport a message from one machine to anotherDoes not use acknowledgements to make sure messages arriveUDP message is called a user datagram

  • UDP - User Datagram Protocol

  • UDP - User Datagram ProtocolSource port: An optional field with the port number If a port number is not specified, the field is set to 0 Destination port: The port on the destination machine Length: The length of the datagram, including header and data Checksum: A 16-bit one's complement of the one's complement sum of the datagram, including a pseudo header similar to that of TCP

  • UDP - User Datagram ProtocolConceptual Layering

  • TCP - Transmission Control ProtocolTCP is a communication protocol, not a piece of software!Provides reliable stream servicePositive acknowledgement with retransmissionSpecifies the format of the data and acknowledgements that two computers exchange to achieve a reliable transferSpecifies the procedures the computers use to ensure that the data arrives correctlySpecifies how TCP software distinguishes among multiple destinations on given machineSpecifies how communicating machines recover from errors like lost or duplicated packets

  • TCP - Transmission Control ProtocolSpecifies how two computers initiate a TCP stream transfer and how they agree when it is completeDoes not dictate the details of the interface between an application program and TCPDoes not specify the exact application programs to access these operationsReason: flexibilityTCP uses the connection, not the protocol port, as its fundamental abstractionConnections are identified by a pair of endpoints

  • TCP - Transmission Control ProtocolTCP port number can be shared by a multiple connection on the same machineThe basic unit of transfer used by TCP is a segmentSegments are used to pass control information or data

  • TCP - Transmission Control ProtocolSend Packet 1Receive ACK1Send Packet 2Receive ACK2Receive Packet 1Send ACK 1Receive Packet 2Send ACK2Sender awaits an acknowledgement for each packet sent Server SiteReceiver SiteNetwork Messages

  • TCP - Transmission Control ProtocolSend Packet1Start TimerACK would normallyArrive at this timeRetransmit Packet1Start TimerTimer ExpiresPacket should arriveACK should be sentReceive Packet1Receive ACK1Cancel TimerServer Site Network MessagesReceiver SitePacket lostSend ACK1Timeout and retransmission that occurs when a packet is lost

  • TCP - Transmission Control ProtocolA simple positive acknowledgement protocol wastes a substantial amount of network bandwidthDelays sending a new packet until it receives an acknowledgement for the previous packetSliding window protocolKeeps the network completely saturated with packetsHigher throughput than a simple positive acknowledgment protocol

  • TCP - Transmission Control ProtocolSend Packet1Send Packet2Send Packet3Receive ACK1Receive ACK2Receive ACK3Receive Packet1Send ACK1Receive Packet2Send ACK2Receive Packet3Send ACK3Sender SiteNetwork MessagesReceiver SiteThree packet transmitted using a sliding window protocol

  • TCP - Transmission Control ProtocolConceptual Layering

  • Telnet remote login protocolAllows user at one site to establish a TCP connection to a login server at another site, and then it passes keystrokes from the users terminal directly to the remote machine as if they had been typed at a terminal on the remote machineCarries output from the remote machine back to the users terminal

  • Telnet remote login protocolThe service is called transparentTelnet client software User specifies a remote machine either by giving its domain name or IP addressTelnet offers three basic servicesDefines a network virtual terminal (NVT)Includes a mechanism that allows the client and server to negotiate optionsTreats both ends of the connection symmetrically

  • Telnet remote login protocolclient readsfrom terminalclient sendsto serverserver receives from terminalserver sends topseudo terminal

  • FTP File Transfer ProtocolManages files across machines without remote Telnet sessionTransfers files, manages directories, accesses e-mailDoes not enable access to remote machine for program executionUses two channels for simultaneous transfer of commands and dataConducts all transfers in foregroundDoes not use queues or spoolersso you are watching the transfer process in real time

  • FTP File Transfer ProtocolRelies on TCP to provide connection management Protocol Interpreter PI transfers instructions using TCP port 21Data Transfer Process DTP transfers files using TCP port 20

  • FTP File Transfer ProtocolFTP channel connections

  • FTP File Transfer ProtocolLoginVerifies user ID and passwordAnonymous FTP allows access without login accountAccess and file transfer requires proper permissions on the remote sideDefine directoryIdentifies starting directoryLocal and remote file systemDefine File Transfer ModeText uses ASCII characters separated by CR and NLBinary transfers without conversion or formatting

  • FTP File Transfer ProtocolStart Data TransferEnables user commandsStop Data TransferCloses connection

  • TFTP Trivial File Transfer ProtocolDoes not log on to remote machineUses UDP connectionless transportTFTP transfer identifiers (TIDs) set ends of connectionSupport basic error messagesAny kind of error can result in transfer failureUses to boot diskless terminals and load applicationsSmall executable size and memory requirementsCannot execute FTP until loaded with OS Lax access regulations pose security risks

  • Electronic MailThe most widely used application serviceDiffers fundamentally from other uses of network Usually timeout and retransmission if no acknowledgementSender dont want to wait for the remote machine to become available before continuing work!User don't want to have transfer abort merely because communication with the remote machine becomes temporary unavailable!Spooling

  • Conceptual components of an electronic mail system

  • SMTP - Simple Mail Transfer ProtocolStandard for the exchange of mailbetween machinesFocuses specifically on how the underlying mail delivery systempasses messages across a link from one machine to anotherMessages transferred as 7-bit ASCIIUses spools or queuesDoes not specify how the mail system accepts mail from a user or how the user interface presents the user with incoming mail

  • SMTP - Simple Mail Transfer ProtocolDoes not specify how mail is stored or how frequently the mail system attempts to send messagesMail command identifies sender and provides message informationResponse is acknowledgment with identification of recipient

  • Example of SMTP TransferS: 220 Beta.gov Simple Mail Transfer Service ReadyC: HELO Alpha.eduS: 250 Beta.gov

    C: MAIL FROM: S: 250 OK

    C: RCPT TO: S: 550 No such user here

  • Example of SMTP TransferC: RCPT TO: S: 250 OK

    C: DATAS: 354 Start mail input; end with .C: sends body of mail messageC: continues for as many lines as message containsC: . S: 250 OK

    C: QUITS: 221 Beta.gov Service closing transmission channel

  • ReferencesThe Internet Unleashed, SAMS PublishingInternetworking With TCP/IP, Douglas ComerTeach yourself TCP/IP in 14 days, Tim ParkerNovells Complete Encyclopedia of Networking, Werner Feibel http://www.ieee-occs.org

  • Conclusion