What is a protocol?

Download Report

Transcript What is a protocol?

DT266/3 Internet Application
Development
The Internet
Internet
“The Internet is a worldwide system of computer
networks, a network of networks in which users
at any one computer can, if they have permission,
get information from any other computer”
–http://www.whatis.com
Internet
 "Internet" refers to the global information system that –
(i) is logically linked together by a globally unique address
space based on the Internet Protocol (IP) or its subsequent
extensions/follow-ons; (ii) is able to support communications
using the Transmission Control Protocol/Internet Protocol
(TCP/IP) suite or its subsequent extensions/follow-ons, and/or
other IP-compatible protocols; and (iii) provides, uses or
makes accessible, either publicly or privately, high level
services layered on the communications and related
infrastructure described herein.
–
Federal Networking Council (1995)
So what is it?
The Internet is a network…
So what is it?
…of networks...
So what is it?
…comprised of nodes, each of whom can communicate
with each other using a standard set of rules...
NODE B
NODE A
INTERNET
TCP/IP
TCP/IP
Transmission Control Protocol/Internet Protocol
Carries information around the Internet for us
Hold on…
What is a protocol?
Why do we need it?
Protocol
The forms of ceremony and etiquette observed by
diplomats and heads of state.
A code of correct conduct: safety protocols; academic
protocol.
–http://www.dictionary.com
…what they’re really saying is that a protocol is…
an agreed set of rules
or, in computer science
A standard procedure for regulating data transmission
between computers.
–http://www.dictionary.com
Protocol
Why is it so important for the Internet
Consider postal system...
Internet is comprised of networks of networks
Each network contains different types of nodes/hosts
Unix
Windows
Each network is (possibly) a different type
speaks a different language
Need a common standard
TCP/IP
IP
Internet Protocol
Gives every node connected to the Internet a unique
address
Provides a standard message type for nodes to send
messages between each other
This protocol is agreed by all nodes connected to the
Internet to allow them to communicate in the same
language
IP - Internat Addressing
All nodes have a unique address
Each address is represented by 32 bits
e.g. 10010011111111001000010000101011
broken into four parts separated by a decimal
point
e.g. 10010011. 11111100.10000100.00101011
and converted to decimal
e.g. 147.252.132.43
IP – Message Format
There exists a specific format for messages that
nodes send to eachother
Application data is appended onto the message
TCP
TCP is the transmission control protocol
It ensures that IP messages are delivered
IP and TCP exist at two separate levels, or layers in
the protocol stack
Protocol Stack
Application Layer APP
Transport Layer
Network Layer
•Application, such as
web browser wishes to
send a message.
•Puts together its
message using its own
protocol (HTTP - we
will meet this again
later) and hands it
down to transport layer
Protocol Stack
Application Layer
Transport Layer
Network Layer
TRANS APP
•Transport layer
receives message and
wraps it up using its
own protocol - TCP
•Resulting message is
handed down to
Network Layer.
Protocol Stack
Application Layer
Transport Layer
Network Layer
•Network Layer receives
message and wraps it up
using its own protocol, IP and
sends it across the network,
i.e. over the Internet, with the
IP address of its destination
NW TRANS APP
INTERNET
Protocol Stack
The final message, called an IP packet, is sent from
node to node, using a process called routing (outside
the syllabus of this course).
Each node looks at the destination address and
forwards the message onwards.
When the node reaches the destination the
encapsulation process we just witnessed is reversed.
Protocol Stack
•Destination network layer
receives message after it was
routed across the Internet.
•NW Layer removes the
contents and passes it up to
the Transport Layer
NW TRANS APP
INTERNET
Application Layer
Transport Layer
Network Layer
Protocol Stack
•Transport layer looks at
message. Then sends an
acknowledgement back
Application Layer
to the sending node.
This is a confirmation
Transport Layer
that the message was TRANS APP
sent.
Network Layer
•It then removes the
contents of its packet
and hands it up to the
application layer
Protocol Stack
•The application layer has now
received the message that was
sent to it by the other application,
somewhere else on the Internet. APP Application Layer
•This layering concept is very
Transport Layer
common, and is core to computer
networking.
•It separates functions and
Network Layer
protocols i.e. NW Layer handles
routing and addressing, TR Layer
handles errors and lost packages,
APP Layer uses the information.
TCP/IP and OSI
The example we have just seen is quite simplified.
There are two separate protocol stacks
OSI Protocol Stack
TCP/IP protocol stack.
OSI has seven layers
TCP/IP has five layers
Our example illustrated the functionality of the three
layers most important to us, as Internet Developers.
You may like to take a look at “James Bond and the
seven layer reference model”.
Internet Addressing - DNS
So…
???
!!!
All nodes/hosts on the Internet have a unique address?
Yes, we just saw that!
And if I want to talk to another node I need to know it’s
address?
Well, not quite?
Huh?
Well, most hosts have names as well. Host names!
I see, so does IP understand these names as well.
No, but we have a translator to switch between names and
addresses. DNS, the Domain Name Service.
WOW! How does it work?
Domain Names
A domain name locates an organisation or other entity
on the Internet
www.ireland.com
This represents the Internet address for ireland.com
and a particular host server called www.
The com part is the top level domain and represents
the type of organisation
Other top level domains include .ie, .edu, .org, .de
The ‘ireland’ part with the top level domain is called
the second level domain, and identifies the organisation
Further sub levels may be added, with the left-most
part representing the server, in that domain.
Domain Names
Server
Second level domain
www.ireland.com
Top Level domain
Altogether this name uniquely represents a host
But as we’ve seen, an IP address does this as well
Lets look at DNS, the service which maps human
readable host names to machine usable IP addresses
DNS
DNS is a hierarchical database
meaning the data is structured in a tree, much like the
directory structure of a UNIX or Windows file system.
The root domain, ".", is at the top, and various subdomains
branch out from the root.
On the Internet, for example, the first branches coming out
of the root are the top-level domains such as .com and .ie
Under each of these top-level domains are more branches
containing other domains, such as cisco.com, ireland.com,
and dit.ie under the .ie domain. Each of these domains may,
in turn, have their own subdomains, such as comp.dit.ie
under the dit domain and sales.cisco.com under the
cisco.com domain
DNS Tree (incomplete)
. (root domain)
.ie
dit.ie
tcd.ie
comp.dit.ie
home.comp.dit.ie
.edu
.com
ireland.com cisco.com
.org
ietf.org
sales.cisco.com
www.sales.cisco.com
ieee.org
DNS - Name Servers
Each domain (and sub-domain) has its own name
server, a server which contains the host name
information about the hosts and sub-domains within its
domain.
The dit.ie domain, for example, has a name server that stores
address information about all of the hosts and subdomains in the
dit.ie domain.
However, authority for a subdomain, such as comp.dit.ie, can
be passed to a name server that has authority for that subdomain.
When a name resolution request comes to the dit.ie name
server, it just passes the request off to the comp.dit.ie name
server.
In this way, DNS is truly distributed across the Internet, with
each domain maintaining only the information that is pertinent to
that domain
DNS – Name Resolution
Requests are made to the name servers in order to
resolve names
e.g. to find the IP address for home.comp.dit.ie the
following steps take place
A DNS server would ask the root server for the address of
the name server for the .ie domain
The DNS server then can contact the .ie name server and
asks this server for the number of the name server for the
dit.ie domain
In turn, the DNS server then contacts the dit.ie name server
and asks for the address of the name server for comp.dit.ie
domain
Finally a request is made to the comp.dit.ie domain for the
address of the server named ‘home’. This IP address is
returned and can be used for communication between nodes.
Organisations
Internet Society (ISOC)
http://www.isoc.org/
Internet Engineering Task Force (IETF)
http://www.ietf.org/
Internet Architecture Board (IAB)
http://www.iab.org/
History of Internet
The Internet was originally proposed by an
American body known as ARPA (Advanced Research
Projects Agency).
It was originally conceived as a way of testing the
viability of networking.
During the later stages of its life ARPA became more
defence-oriented and was renamed DARPA (Defense
Advanced Research Projects Agency) and oversaw
the first implementation of a network originally known
as ARPAnet.
The network was commissioned in 1971.
History of Internet
In the early days of the network there was a
perceived need for users at one computer to log into
another computer.
The protocol that was used in the original ARPAnet,
the 1822 protocol, was inadequate for this and
another protocol, NCP, was devised and implemented.
By 1973 it became clear that NCP was inadequate to
handle the volume of data that was being generated.
In 1974 two researchers, Vincent Cerf and Robert
Kahn, suggested that because of the growing use of
networking and the inadequacy of current protocols a
new set of protocols needed to be devised.
History of Internet
The radical suggestion that they made was that the
protocols should be independent of any hardware.
This set of protocols that was developed was known
as TCP/IP and, by the early 1980s, had supplanted
NCP as the protocol set of choice for American
networking.
As networking spread in the USA more and more
non-military organisations joined the ARPAnet; in the
initial stages these were mainly universities.
This lead to the splitting of the ARPAnet into two
networks: MILnet which was devoted to military
networking and ARPAnet which became a civilian
network.
History of Internet
As ARPAnet was transformed into a civilian network
it was renamed the Internet.
ARPAnet went into decline when the United States
Government Office of Advanced Scientific Computing
instigated a high-speed network of supercomputers
known as NSFNET; it was eventually retired in 1990.
Ref:Distributed Applications and E Commerce,
Darrell Ince
Summary
Overview of the Internet
Protocols
TCP/IP
Domain Names
Host Names
Domain Name Service
Internet Organisations
History of Internet
Reference
Internet Protocols
http://info.acm.org/crossroads/xrds1-1/tcpjmy.html
DNS
http://www.cisco.com/univercd/cc/td/doc/product/iaabu/cd
dm/cddm111/adguide/dns.htm
http://www.whatis.com/
http://www.ietf.org/
http://www.isc.org/