Assignment #4 : due electronically (since classes will be over), 5PM, Fri., May 6th (no extensions!)
Problem #1 –
Scenario:
There exists a 10/100/1000 Ethernet switch, with a 1000 Mb/sec (gigE) full duplex uplink to a backbone network. On this
switch lives a number of servers which provide
resources of various kinds to the entire Internet community. On ports 3-5, live
servers which provide Web and FTP access to various and sundry software and
cultural resources. On port 7, lives a streaming media server which provides
Real Audio streams for several radio stations. On port 9, lives a server
that provides telnet/SSH access for Unix shell
commands. All servers are running at 1000 Mb/sec (gigE)
full duplex.
Problem:
The server that lives on port 3 has recently made available the latest version
of a popular "no cost" software product. As a result, utilization on
this port is currently running at almost 800 Mb/sec (just about all outbound, as
you’d expect). Utilization on ports 4 and 5 are running between 150-200
Mb/sec. Given, though, that the switch uplink to the backbone is only 1000
Mb/sec, the traffic from server/port 3 is overwhelming everything else. Web
response on server/port 5 (which actually has more users, just pumping fewer
bits) is really sluggish. Furthermore, the combined traffic from these three
Web/FTP servers is overwhelming the traffic from the two "real time"
servers: the streaming audio server and the ssh server. Given the amount of congestion in the
switch, enough packets from the streaming audio are getting dropped to be
problematic to the listener at the other end. Finally, there is SO MUCH Web/FTP
traffic on port 3's server that its remote backup process keeps timing out,
because packets keep getting dropped at the switch uplink port (the remote
backup server is in another building). Changing the hardware on the
switch from a 1000 Mb/sec Ethernet uplink to a 10 gigabit Ethernet port uplink isn’t
feasible at this time.
Desired Result:
The administrators of these systems would like it if somehow the outbound
traffic from server/port 3 could somehow be "throttled" to allow more
traffic through from the other servers. Assume that there is no way to do this
from the workstation. (Actually, there are ways, but let's assume that
they don't know how to. They want it done at the switch.) Furthermore, they
would like the traffic from the "real time" servers: server/port 7
and server/port 9 to get "prioritized" so that any traffic from these
server/ports always gets through before traffic from the other ports.
Finally, they'd like to be able to get backups of the files on server/port
3. Assume that all of these applications have known TCP or UDP
ports.
Question (finally):
Based on what we've said talked about in class, is this problem
resolvable? If it is, what standards-based technologies would be used to
resolve this issue? Describe in general
terms (not the details of the technologies themselves, but just in general) the
basic concepts associated with the technologies and how they would work in this
situation.
Problem #2 -
In discussing TCP congestion avoidance (as opposed to congestion), we discussed
several alternative approaches; two of these were marking a packet (as in the
Explicit Congestion Notification mechanism) versus dropping a packet (as in RED
implemented on routers). Briefly discuss the relative advantages and
disadvantages of these two approaches.
Problem #3 -
Suppose you want to use a filter-based firewall to block all INCOMING TCP
connections, but to allow outbound TCP connections. You don't want
to block all incoming TCP traffic, just any initial connection attempts.
If you assume that your firewall is allowed to use the TCP header
"Flags" bits (refer to Comer or Stevens as to what's in those bits,
again) in addition to the usual port numbers, explain how you can achieve the
desired effect of allowing no inbound TCP connections. (Hint: note
what fields are in the Flags bits of the TCP header and remember how those are
used!) I’m not asking for an actual filter
here; what I’m asking for is what you would filter on.