tcp/ip and the internet - griffith university · pdf fileccn: lecture notes—module 4...

30
CCN: Lecture Notes—Module 4 Computer Comm. & Networking 1 TCP/IP and the Internet Computer networking today is becoming more and more entwined with the internet. By far the most popular protocol set in use is TCP/IP (Transmission Control Protocol/Internet Protocol). It is worth looking at this in more detail. As TCP/IP existed prior to the OSI, it doesn’t fit exactly into the defined layers. It does however have a layered structure and fits pretty much into layer 3 and 4.

Upload: vuongtuyen

Post on 01-Mar-2018

217 views

Category:

Documents


4 download

TRANSCRIPT

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 1

TCP/IP and the InternetComputer networking today is becoming more and more entwined with the internet. By far the most popular protocol setin use is TCP/IP (Transmission Control Protocol/Internet Protocol). It is worth looking at this in more detail.

As TCP/IP existed prior to the OSI, it doesn’t fit exactly into the defined layers. It does however have a layered structure and fits pretty much into layer 3 and 4.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 2

Why do we need all this stuff?Consider sending a message (say email) from your computer to another computer on the other side of the world. All you know isthe address of the destination.

• Firstly, you use a mailer program which allows you to type a mail message and specify the address. How do we know the user at the other end has the same mailer program? We don’t and it doesn’t matter. The TCP part of the suite has a mailer that can send and received mail in a standard format that every internet user can read. Your mailer program is just an editor that supplies the message to this mailer.

• When TCP has formatted the mail message, we must make this message into a packet that can be sent across the internet and find its way to the destination. The IP part does this by adding a header with the IP address. This is the unique address that every internet user is addressed by. Routers can route your message with this address.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 3

Why do we need all this stuff? (Cont’d)• This IP packet now has to be sent over the media at your

site. To do this we need a link layer to look after the transmission, ie. correct the error etc. This is performed by your local LLC. IT is dependant on the type of network at your end.

• The next step depends on what type of media you have at your end, ie. Ethernet, Token Ring etc. The MAC will take care of this and will attach a header, preamble etc to your packet that will allow it to be sent on the local LAN.

• This packet is now sent over your LAN.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 4

Why do we need all this stuff? (Cont’d)• Somewhere on your LAN exists a router. This device will received

your network packet and disassemble it up to IP level, so it mayread the IP address. It will then pack it up again into a form suitable for the next transmission step. This may be simply another hop on a LAN or it may travel on a WAN of public network. In either case, it will be packeted into a form suitable for transmission.

• Eventually, the packet arrives at the LAN of the destination computer. The router accepts the packet and broadcasts it onto the LAN with the network address of the destination. The destinationcomputer will receive the packet and proceed to unwrap it. Firstly the MAC strips off the network headers, CRC’s etc. The LLC checks it over.

• The IP now unpacks the IP packet and passes the TCP packet to the TCP. After unpacking, the TCP recognizes it is an email. It treats the packet as email and passes it to the appropriate application. In this case your email program.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 5

TCP/IP (Cont’d)

Each layer encapsulates the output from the layer above. We have already examined what a network packet contains. Let use look at the rest of the TCP/IP suite.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 6

TCP/IP (Cont’d)

Everything feeds into the IP part of the suite. ICMP and OSPF are to deal with network operation. The TCP handles the actual data transmission and is a connection oriented protocol. UDP is a connectionless unreliable service. Its main use is in network management.

The TCP helpers sit above TCP and provide services that we are familiar with. Remember these are usually accessed by higher layers up toapplication.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 7

Telnet• A TCP helper that enables remote login

• Communication is via codes defined by Network Virtual Terminal (NVT)

• Command characters are defined by setting the MSB

• All commands are preceded by FF (IAC)

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 8

Telnet

A request for 8 bit binary would be

IAC, SB, WILL, ‘0’, SE

An affirmative response would be

IAC, SB, DO, ‘0’, SE

An refuse response would be

IAC, SB, DON’T, ‘0’, SE

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 9

FTP

• File transfer protocol

• A helper to perform file transfers

• NVT is used to negotiate the transfer

• The operation depends on the file structure

• Unstructured, structured and random access files are supported

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 10

SMTP• Simple mail transfer protocol (SMTP)

• The native email protocol

• Mail is send via local mail system to SMTP server/client

• ASCII headers are used

• SMTP send NVT like commands over the TCP connection

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 11

SMTP

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 12

HTTPHypertext transfer protocol

Used for access to WWW

3 request packets and one response packet defined

Request

Get: to request data from the sever

Head: to ask only for headers

Post: to send information to server

Response

To send the response of get or head to client

WWW sites are addressed by a Uniform Resource Locator (URL)

METHOD://HOST/PATH

METHOD: The protocol used to retrieve the data. FTP, HTTP, TELNET, gopher

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 13

HTTPWWW sites are addressed by a Uniform Resource Locator (URL)

METHOD://HOST/PATH

METHOD: The protocol used to retrieve the data. FTP, HTTP, TELNET, gopher

HOST: Computer address usually store as alias often starting with www.

PATH: Path through directories of host machine separated by slashes.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 14

HTTP—Web page

Web browser architecture

Web pages are static, dynamic or active

Static page is set by the creator and cannot be altered by the user. Hypertext Markup Language (HTML) is normally used to create the page layout.

HTML uses tags to convey the markup of all text, graphics and links.

Eg.

<B>Hello there</B> will print bold text

Hello there

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 15

HTTP—Dynamic and active pagesDynamic pages

The document served will vary depending on the request given

They are usually created using a Common Gateway Interface (CGI) script. This script is urn at the server site so the browser needs no knowledge of its syntax.

Active pages

Often we need to execute a program at the client site. This might be to display animated graphics, calculators etc.

Java is often used as a language to do this. The code binary is downloaded to the client where it is executed.

Java consists of a programming language, runtime environment and class library. It is object oriented and C++ like.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 16

Transmission Control Protocol (TCP)Examination of the packet header will give an insight to the operation of the TCP segment.

Source port: This gives a service point at the source end, ie. Which application sent the segment.

Destination port: Similarly which application at the far end should get the segment.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 17

TCP—header

Sequence number: Sequence number of the firs data octet in this segment. When a SYN flag is set, this is the initial sequence number (ISN). TCP is stream oriented, ie. A sequence number applies to the first octet of data in the segment. If a segment had 500 octets and its sequence number was 2000 thenthe next segment would have sequence number 25000.

Acknowledgement number: Contains the sequence number of the next segment to be received.

Data offset: Number of 32 bit words in the header.

Reserved: Reserved for future use.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 18

TCP—header

Flag: URG Urgent pointer field significantACK Acknowledge field significantPSH Push functionRST Reset the connectionSYN Synchronise the sequence numbersFIN No more data

Window: Flow control. Contains the number of data octets that sender is willingto accept.

Checksum: The one’s complement of the sum modulo 216-1 of all the 16 bit words in the segment plus a pseudo header.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 19

TCP—header

Urgent pointer: point to the octet after any urgent data. So the amount of urgent data can be measured.

Options: Maximum segment size.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 20

Internet Protocol (IP)

Version: Allows use of newer versions of the IP

Internet Header Length (IHL): Length in 32 bit words of header. Minimum is 5.

Service type: Defines reliability, precedence, delay and throughput parameters.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 21

Internet Protocol (IP) (Cont’d)

Total length: Length of entire datagram in octets.

Identification: A sequence number combined with the source and destination addresses and protocol which makes this datagram totally unique.

Flags: Only 2 defined. More bit --- used for fragmentation. Don’t fragment bit --- prevents fragmentation.

Fragment offset: Describes where this fragment belongs in the original datagram. Measured in 64 bit units.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 22

Internet Protocol (IP) (Cont’d)

Time to live: How many router hops this datagram will live for.

Protocol: Shows what higher level protocol is to receive this datgram at he receiving end.

Header checksum: The 16 bit ones complement addition of all 16 bit words in the header. It is recalculated at each router as some header fields may change.

Source address: Internet address or IP address of sender.

Destination address: IP address of destination.

Options+padding: Contains user options plus padding to ensure header is a multiple of 32 bits.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 23

Network addressesIf networks are to be connected together then unique addresses of all nodes must be employed. The Internet Protocol addresses perform this function.

• Each address is a 32 bit number (IP address)

• The break-up of this number is dependent on the class of LAN.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 24

Network addresses

• These difference classes of LAN’s allow more efficient use of the addresses.

• A large LAN would be assigned to class A giving it up to ? possible node address.

• A small LAN would be assigned to class C allowing netID’s for many of these types of LAN.

• Addresses are often expressed in dotted decimal notation. E.g., address of an MEE machine 10000100 11101010 00000111 00101011

as 132.234.7.43 (this machine is within a class B site)

224

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 25

Network addressesOften subnet masks are employed to speed communication within a large LAN.

• The hostID part is now broken into a subnetID part and a host ID part.

• A sunet mask is used to distinguish the 2 parts.

• Each node masks incoming addresses with the mask to identify thehostIDpart of the address.

E.g., A class B site could break itself up into 256 subnets each with 256 nodes by using a subnet mask of 255.255.255.0

• This allows better performance within each smaller separate subnet whilst retaining only one netID for the site.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 26

Non-internet addressingIn addition there are some addresses which have been assigned for nodes that live on a network that is not directly connected to the Internet. You may use these addresses freely as long as theyare not transmitted onto the Internet.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 27

IPv6The current version of IP is version 4 (IPv4). There are some limitations becoming apparent with this version. An upgrade (IPv6) is presently being slowly implemented.

The biggest and most needed change is the size of the IP address field is now much bigger. This can allow many more nodes to have unique addresses on the Internet. IPv4 has a 32 bit address giving 232 possible addresses.

IPv6 has a 128 bit address giving 2128 possible addresses. This is unique address.

340,282,366,920,938,463,463,374,607,431,768,211,456

This is 1564 addresses for every square metre of the earth!!

The written notation is slight different

6489:0000:0000:0000:73B2:998E:65F7:5708

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 28

IPv6There are many other improvements in IPv6. It will be slowly implemented in areas where translation can take place. This is clearly a very difficult task to roll it out.

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 29

Domain names and DNSPeople don’t work well with numbers, so IP addresses may also be specified by name.

When names like this are used, a Domain Name Server (DNS), whichwill be resident for each LAN, will supply the IP address when given the name.

Domain names are broken up logically to try to simplify addressing

CCN: Lecture Notes—Module 4 Computer Comm. & Networking 30

Domain names and DNSIP addresses are administered internationally by the Network Information Centre (InterNIC). The subnet addressing is then administered locally.

The IP address is used to locate a node on the larger network and is encapsulated into an IP packet. Routers unpack the address to route the packet. At the last router however the packet is passed onto the LAN. Here a physical address is used. This is the address of the LAN physical layer hardware in each node. (Commonly called the ethernetaddress)

Every card produced has a unique 48 bit address

The router builds a table that relates IP addresses to physical addresses for nodes connected in its LAN.