Fundamentals of Communication Networks
Download
Report
Transcript Fundamentals of Communication Networks
ES 101. Module 7
Basic Network Troubleshooting &
Useful Utilities
Last Lecture
• Uniform Resource Locators (URL)
• Hypertext Transfer Protocol (HTTP)
• Common Gateway Interface (CGI)
This Lecture
•
•
•
•
•
Internet Control Message Protocol (ICMP)
Ping
Traceroute
File Transfer Protocol (FTP)
Web Development Utilities
Internet Protocol Architecture
Internet Control Message Protocol
• ICMP provides a means for hosts and routers to
communicate about problems that occur in the network
–
–
–
–
Congestion notification
Destination not reachable
Packet TTL expiring
Timestamp
• ICMP utilizes IP as the underlying transport
– So, ICMP messages are routeable
• These capabilities are used by utility programs that are
very useful in network troubleshooting
– PING
– Traceroute
ICMP (cont’d)
• Before discussing the PING and Traceroute
utilities, let’s examine some of the details of
certain ICMP packets
Destination Unreachable, Time Exceeded
Echo Request, and Echo Reply
Timestamp
Timestamp Reply
ICMP Field Descriptions
• The “Type” and “Code” fields are utilized by
routers and hosts to determine the function of the
packet
– Destination unreachable
– Echo Request
• The remaining fields (Identifiers, sequence
numbers, and data) are used to achieve the
function of the utility
Packet Internet Groper (PING)
• Ping is a low-level utility that allows trouble shooting of
networking problems
– Utilizes the Echo Request and Reply packet of ICMP
– Ping packets are the smallest packets that are routed on an IP
network
• Ping provides a means of testing connectivity to a remote
device on an IP network
• It is the first thing that you do to troubleshoot networking
problems
• If you can successfully ping a remote server, then the IP
connectivity exists to that system
– This implies that the problem is with higher layers than the IP layer
PING Operation
• An ECHO Request packet is sent to a destination IP
address
– Packet sequence numbers are used to uniquely identify the packet
• The current time is stored in the data field of the Echo
Request packet
• The destination then encapsulates the ECHO Request
packet in an ECHO Reply packet, and returns it to the
sender
• The sender can then determine the round trip travel time of
the original packet
– Round trip time is measured in milli-seconds (ms)
Useful PING Features
• If you run the Ping command without specifying an IP
address, you can change some of the parameters
–
–
–
–
–
Number of packets
Packet size
Timeout values
Change the source IP address
Transmitted data pattern
• These features are useful in troubleshooting problems that
are sensitive to packet size, and/or data patterns
Ping Error Messages
•
•
•
•
Destination unreachable
Network unreachable
Port unreachable
Percentage of packets that timed out
– TTL expired
Continuous Ping
• Sometimes it is necessary to “turn-on” Ping, and let it run
for an extended period of time
• This allows you to look for intermittent problems with
excessive propagation delay across the network
• At the command prompt, this command is invoked by:
– ping –t <IP address>
– To breakout of this command, enter “CTRL C”
• Look for large periodic changes in round trip travel time and
the number of failed replies
– Are all packets returning?
– Are some packets being lost?
PING by Domain Name
• If you can ping a remote device using the IP address, but
cannot access it via the web browser, try pinging using the
domain name
– Ping –t <target domain name>
• If this does not work, then you know something is wrong
with DNS
• Try pinging the DNS server IP address on your network
– If this does not work, then you know that your machine does not
have connectivity to the DNS server, or that the DNS server is
down
Default Gateway Problems
• If you can ping devices on your local area
network, but cannot ping remote devices, there is
something wrong with your default gateway setup
• If your computer has no default gateway (router)
defined, it does not know where to send packets
that need to be routed to “foreign” networks
What Is My IP Address?
• In some networks, IP addresses are assigned
dynamically
• This means that if you go into the control panel,
you can’t determine your IP address
– This is useful for other troubleshooting techniques
– This assumes that you have been assigned a public
address
Note: You cannot do this if you are behind a
firewall, and use private IP addresses.
What Is My IP Address? (cont’d)
• If you have a public IP address you can find out
what the IP address of your computer is by doing
the following:
– Open the “command” prompt
• Start – Run – “cmd”
– Go to the root directory
– Enter the command “ipconfig”
“IPCONFIG” Response
Private IP Addresses
• When an organization uses firewalls, a technique called
“Network Address Translation” is used to mask the
network details from machines outside of the firewall
• NAT utilizes “private” IP addressing
• Private IP addresses are not routed on the Internet
– This is a requirement to connect a router to the Internet
• Private IP addresses have the following format:
– Class A – 10.0.0.0
– Class B – 172.16.0.0 through 172.31.255.255
– Class C – 192.168.0.0 through 192.168.255.255
Trace Route
• “Traceroute,” or “trace” is another utility that uses ICMP
messages to troubleshoot network problems
– Time-to-live Exceeded, and Port Unreachable
• This utility is used to report all routers that are in the path
between a source and destination IP address
• It works by sending a UDP/IP packet from the source to
the destination
• The TTL field is incremented from 1 to 30, which reports
the trace “findings” as the packet TTLs expire
Trace Operation
• The TTL field is set to “1”, and the source sends the packet
to the destination
• When the packet makes it one hop, the first router
decrements the TTL field to “0”
• The router then discards the packet, since the “life” of the
packet has expired, and sends an ICMP message back to
the source indicating “packet death”
– The router IP address is included as the Source Address
– The source then knows the IP address of the first router in the path
• The source does this three times, recording the round-trip
time for each packet
Trace Operation (cont’d)
• At the end of this sequence, the TTL is incremented by one
“hop”
– The previously described procedure is then repeated
• This continues until the packet reaches the final destination
• The UDP packet is addressed to a high-numbered (unused)
port
• There is no process to receive and process the data, so the
destination returns an ICMP “port unreachable” message to
the source
• When you invoke the trace command without any
arguments, it interactively starts a dialogue similar to the
Ping utility
Trace “Asterisk” Indication
• Sometimes when you perform the traceroute
operation, you will see an asterisk (*) instead of
the round-trip time
• This tells you that there was no reply received
before trace timed out
• This is done to limit the vulnerability of the router
to a denial-of-service attack
Trace Route Output
Trace Route Output
• The previous IP address (207.59.200.120) was determined
by pinging www.awdozier.com
• The output obtained shows that Vanderbilt’s edge router to
the Internet is hit in 3 “hops”
– 129.59.146.128
• The route then propagates to the edge of the Qwest
network
– 205.171.21.186
• At this point, the path peers with another service provider,
and ultimately hits Vallnet’s DNS server
– 207.59.200.120
11 router hops from Vanderbilt to Fayetteville, TN!!
Observations
• Just because you are near the destination from the
standpoint of geography, this does not mean that
you are close from the standpoint of the network
topology
• Each router hop takes a finite amount of time to
process
– The round-trip time to the Vallnet DNS is around
ms, which is pretty good
32
• If there are any points of congestion between you
and the destination, performance degrades rapidly
Looking Glass
• Most big ISPs peer at a number of points with
other large providers
– http://www.traceroute.org/
• It is sometimes useful to diagnose connectivity
problems by pinging, or traceroute’ing, from these
peering points
• This service is typically called “Looking Glass”
• The service allows you to use the ISP’s router to
ping back and/or trace back to your PC
Sprint Looking Glass
Sprint Looking Glass – Ping Output
Sprint Looking Glass – Trace Output
Other Useful Utilities
• Telnet
• File Transfer Protocol (FTP)
TCP/IP Architecture
Telnet
• Before networking, users were restricted to working on
computers to which they had physical access
• In a networked environment, transport layer protocols can
provide virtual connections across the network
– This replaces the requirement that a user be physically attached to
the computer
– Remote login across the network
• A very simple, terminal-based interface is frequently used
by network engineers to communicate with remote devices
• This interface has both a server-side application and a
client application
Telnet (cont’d)
• The user executes a client program that establishes a TCP
connection to the server application
• The client sends keystrokes to the server, and the server
generates responses that are then sent back to the client
• The most common Internet remote terminal protocol is
TELNET
• Although not as sophisticated as a windowing interface, it
is universally implemented and used on all Unix and
Windows-based machines
• Telnet is accessed from the command prompt
– telnet [hostname port #]
– The port number is optional
File Transfer Protocol (FTP)
• When you develop your web site, you will eventually need
to migrate your locally developed files to the web server
• This is most easily done using the File Transfer Protocol
• The file transfer protocol consists of a server-side
application and a windows-based client application, which
is installed on your computer
• Another alternative is to logon to an FTP server using the
Telnet protocol
– This would typically be a Unix server, which is beyond the scope
of this course
Windows-based FTP is easier for beginners
Windows-based FTP
• There are a variety of free, windows-based FTP
clients available on the web
• One of the more common ones is “Smart FTP”
– http://www.smartftp.com/download/
• It would be advisable to install this utility on your
computer
• It allows you to “drag and drop” from Windows
Explorer to the FTP directory, and vice’ versa
Smart FTP Download Screen
Smart FTP Directory Example
Web Server Options
• Web (HTTP) server software is the application responsible
for accepting browser requests, retrieving the specified file,
and returning its contents
• Most web servers on the Internet are Unix-based
– The most common web server application is Apache, which is an
open source application
– http://www.apache.org
• Of course, as in all other matters associated with
computing, Microsoft has other ideas about who builds the
best web server software
– Microsoft’s web server application is the “Internet Information
Services” application, or IIS
Web Server Options (cont’d)
• In EECS we provide a web server for use on department
projects
– http://eecswebdev.vuse.vanderbilt.edu/projects
– This server is an MS IIS server
• Supports MS Frontpage Extensions
• It also supports FTP
• It is administered by Hampton Albert
• The VSC-IT server is also available
– LINUX/APACHE based
– Requires the use of FTP to upload your code
– Does not support MS IIS extensions for Front Page
Development of Web Content
• Our next lectures will begin to delve into the art of
developing your web content
• Web pages are essentially folders and directories of
Hypertext Markup Language (HTML) files
• When you develop in HTML, you can use a variety of
applications
–
–
–
–
–
Notepad, or some other text editor
Microsoft Word
Microsoft Front Page
Dreamweaver
etc.
Web Development Approach
• MS FrontPage is installed on all EECS ICL computers, and
is available for your use
– This allows you to view, manage, move, copy, save, and rename
files and folders on the Web server vs. doing this on your PC and
uploading to the server via FTP
• This will allow you to, just as you would perform the same
actions in Windows Explorer
• In addition, you get a kind of WYSIWYG interface
– With some significant differences
You may use any web development software
for your project…..
Alternative Development Environments
• However, use of FrontPage is not required
• Students can utilize any development environment
which they choose to use
• I will attempt to get you the support required to
assist you in this project
– VSC-IT students
Next Lecture(s)
• The next topics will be on HTML, and other web
development utilities
• At the conclusion of these lectures, we will start
using these tools to build a web site
– This will be your class project
– Your project will result in your grade for the course