Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Lecture 6 11.4.2012
Special Course in Computer Science: Local Networks
Roadmap of the Course So far Basic telecom concepts General study of LANs Ethernet
Today An alternative of Ethernet at a time: token networks Token bus Token ring
An ITU-T local network, ATM LAN
Token Bus
Using LANs Direct application in Factory automation Process control
The nodes are computers controlling the manufacturing process
Real-time processing needed Minimum, predictable delays
Bus topology needed An assembly line resembles a bus
Token bus IEEE 802.4 Standard sustained by General Motors Published in 1990, reviewed in 1995, 1997 Currently withdrawn
Combines Physical configuration of Ethernet (bus topology) Collision-free feature of token rings (=> predictable
delays)
Physical vs. logical topology Physical topology: bus Logical topology: ring Formed based on physical addresses of stations in
descending order A station has a Successor: the station with immediate lower address;
referred as next station Predecessor: the station with immediate higher address;
referred as previous station
More on the ring To form the ring Station with highest address has as predecessor
the station with lowest address Station with lowest address has as successor the
station with highest address
Bus/Ring illustration
Token passing Token: a small frame circulating from station to
station in the logical ring It controls the access to the shared medium When a station has data to send: keeps the token and
sends the data frames There are timers to prevent monopolization Token contains the address of the next station The ring is logical Physical topology is bus => every station gets the token but only
the logical “next” can use it
Token passing illustration 1
Token passing illustration 2
Service classes Data to send can be classified in priority classes:
0, 2, 4, or 6 (6 – highest priority) If a station does not classify its data, then it
implicitly belongs to class 6 When a station uses the classification It has 4 queues, one per class Data arranged in corresponding queue by MAC
layer
A station with queues
Timers There are 4, to handle the different classes THT (token holding timer) Maximum time a station can send class 6 data Same for all stations
TRT4, TRT2, TRT0 (token rotation timers) Maximum time a token takes to circulate the ring + the
time to send respective class data
Ring management The whole token bus depends on the logical ring
management
Management frames There are 7 Token Claim-token Set-successor Solicit-successor-1 Solicit-successor-2 Resolve-contention Who-follows
Removing stations
If a station leaves the ring, its predecessor should now bypass it To reform logical ring
A station may leave Voluntarily Unexpectedly (due to malfunctioning)
Example: token bus with stations A, B, C, D, E, in this logical order Assume station C is leaving the ring
Voluntary leaving
C waits until it gets the token (from B) C sends a set-successor frame to B, identifying D as
the future successor of B B updates its record with the above C sends token to D C leaves the ring
Unexpected leaving B sends token to C and listens for activity on bus
If C is functioning, it sends data/token on the bus and B hears about it, so nothing more happens
If C is not functioning, B hears nothing and then waits a preset amount of time (response window time)
If nothing happens B sends token again, to be sure there is no transmission problem
If after the 2nd response window still nothing happens, B assumes C does not function and sends a who-follows frame with C address in it
D replies with a set-successor frame specifying itself as B’s future successor
B changes its record to the above B sends token to D
Adding stations Stations in the ring provide opportunities for
stations needing to join the ring Periodical testing
A station cannot add itself to the ring Waits for invitation
Two cases 1. The address of joining station within the range of
ring station addresses 2. The address of joining station outside the range
of ring station addresses
Case 1 A token-holding station Sends invitation: solicit-successor-1 frame, with its
address and its successor’s Creates a response window of twice the propagation
delay A station with address in specified range answers
with a set-successor frame If token-holding station gets no answer during the
window, it closes it and sends token to its successor
Case 1 (2) If token-holding station gets an answer (set-
successor frame) during the window Changes its successor to answering station Sends token to the newly added station
The newly added station Sets predecessor and successor accordingly Becomes part of the ring
Case 1 (3) If there are more than one answer => there is a
collision Token-holding station sends a resolve-contention frame Waits for answer for 4 response window times
Each answering station replies in one of the 4 response windows, according to their first 2 address bits
Implicit priority given to 00-stations
Response to resolve-contention frame
First two bits in address
Responding window Waiting time
00 1 None
01 2 One response window time
10 3 Two response windows time
11 4 Three response windows time
Case 1 (4) When two/more stations with same first 2 bits
answer in the same response window then there is collision again
Inviting station sends resolve-contention frame again Only the colliding stations answer based on their
second two address bits Step above repeated until there is one station
succeeding to transmit
Case 2
Station-to-join waits invitation from station with lowest address
When station with lowest address gets token Sends solicit-successor-2 frame with its address and the
largest address in ring Station with address smaller than the lowest or bigger
than the highest answers Next steps as in case 1
Token recovery In what case can there be no token? When ring is first set up When token-holding station fails When a token is corrupted in transit and discarded
by receiving station A new token has to be generated and put in the
ring
Token recovery procedure Every station has a token-recovery timer When this timer expires and there is no activity in
the bus, a station knows there is no token in the network
A station detecting this sends a claim-token frame Indicates that station is willing to generate a new
token
Token recovery procedure 2 When more than one timer expires at the same
time All corresponding stations are token-claimants A collision of their claim-token frames occurs
To solve collision Each station pads the data field of the claim-token
frame with 0/2/4/6 × time slot, depending on the first 2 address bits
Claim-token frame padding
First two bits Length
00 0
01 2 × time slot
10 4 × time slot
11 6 × time slot
Token recovery procedure 3 All stations sending padded claim-token frames
continue listening to the bus If a station senses a frame longer than its own, it
gives up the claim The station sending the longest frame regenerates
token If collision again, procedure repeated based on
second two bits, and third two bits, etc Implicit priority given to 11-stations
Removing duplicate tokens If a token-holding station detects activity in the
bus It knows that other station holds the a token too It drops its token and moves to listening state
Ring initialization At startup, each station knows its own address
only and is connected to the bus It can receive broadcast messages It does not know a predecessor / successor There is no token in the ring
Token-recovery and adding-station procedures are combined
Ring initialization steps New token generated using the token-recovery
procedure The winning station becomes the token-holder The ring is thus formed with one station
The token-holder adds stations to ring using the usual procedure For adding a 2nd station to ring, token-holder defines itself
as both predecessor and successor (case 2)
Token bus layers
MAC sublayer
Access method token passing over a bus topology, as discussed
MAC frame fields Preamble: 1/more bytes of a predefined pattern,
used for synchronizing sender and receiver Added by the physical layer
Start delimiter (SD): 1 byte, serves as a flag to alert the receiver to a frame arrival The N bits stand for non-regular encoding of binary 1 This encoding performed by PhL => implementation
dependent Data field transparency ensured
MAC frame fields 2 Frame control (FC): 1 byte, defines frame type
MAC frame fields 3 Destination address (DA): 2-6 bytes, the physical
address of frame’s next destination Frame Destination address
Claim-token Ignored
Solicit-successor-1 Ignored
Solicit-successor-2 Ignored
Who-follows Ignored
Resolve-contention Ignored
Token Address of successor
Set-successor Address of station that sent solicit-successor frame or of predecessor
Data Address of data recipient
MAC frame fields 4 Source address (SA): 2-6 bytes, the physical
address of sending station Present in all frame types
Data: 0 - 8190 bytes For a data frame: data coming from LLC layer For a control frame: some extra information
Data field contents Frame Data
Claim-token Length of frame
Solicit-successor-1 Address of successor
Solicit-successor-2 Address of successor
Who-follows The address of not-responding successor
Resolve-contention Missing
Token Missing
Set-successor New address of successor
Data Data coming from LLC layer
MAC frame fields 5 Frame check sequence (FCS): 4 bytes, a CRC-32
error detecting sequence End delimiter (ED): 1 byte, serves as a flag to alert
receiver to a frame termination The N bits stand for non-regular encoding of binary 0 This encoding performed by PhL => implementation
dependent Data field transparency ensured Last bit can be used to show if there are more frames to
send
Physical layer
Carrier band, phase continuous Based on carrier band modulation Analog modulation Uses the whole medium capacity No multiplexing
Signaling Data first encoded with Manchester encoding Manchester encoding then modulated with FSK 2 frequencies, a high (H) and a low (L) one Specific modulation technique: 0 bit as HL, 1 bit as LH
Encoding and signaling for CBPCont
Carrier band, phase continuous 2 Transparency Refers to how the SD and ED fields represent their N bits Also refers to padding representation Achieved through a use of L and H frequencies that are not
used in data N bits are modulated in pairs (NN) Use LLHH
Padding: HHLL
Carrier band, phase continuous 3 Parameter Value
Encoding Manchester
Modulation FSK (3.75, 6.25 Mhz)
Data rate 1Mbps
Topology Bidirectional bus
Medium Coaxial cable
Medium interface T connector and drop cable up to 35 cm in length
Carrier band, phase coherent Based on carrier band modulation Analog modulation Uses the whole medium capacity No multiplexing
Signaling Data first encoded with Manchester encoding Manchester encoding then modulated with FSK 2 frequencies, a high (H) and a low (L) one L = data rate, H = 2 × data rate 0 bit as H, 1 bit as L
Encoding and signaling for CBPCoh
Carrier band, phase coherent 2 Transparency Refers to how the SD and ED fields represent their N
bits N bits are modulated in pairs (NN) Half-period of H One period of L Half-period of H
Carrier band, phase coherent 3 Parameter Value
Encoding Manchester
Modulation FSK (5/10, 10/20 Mhz)
Data rate 5 or 10 Mbps
Topology Bidirectional bus
Medium Coaxial cable
Medium interface Taps and drop cable up to 300 m in length
Broadband Specifies a broadband transmission With multiplexing
Signaling Data first encoded with multilevel duobinary 3 levels: 0, 2, 4 0 bit encoded as signal value 0, 1 bit encoded as signal level 4
Encoded data then modulated with a combination of ASK/PSK
Encoding and signaling for Broadband
Broadband 2 Transparency Refers to how the SD and ED fields represent their N
bits N bits use the third level (2)
Broadband 3 Parameter Value
Encoding Multilevel duobinary
Modulation ASK / PSK
Data rate 1, 5 or 10 Mbps
Topology Unidirectional bus, with frequency converter / dual bus
Medium Coaxial cable
Medium interface Taps and drop cable
Optical fiber
Specifies a broadband transmission With multiplexing
Signaling Data first encoded with Manchester encoding Manchester encoding then modulated with ASK 1 bit as a high amplitude 0 bit as a zero amplitude
Encoding and signaling for Optical fiber
Optical fiber 2 Transparency Refers to how the SD and ED fields represent their N
bits N bits use another amplitude level
Optical fiber 3 Parameter Value
Encoding Manchester
Modulation ASK (on/off)
Data rate 5, 10, or 20 Mbps
Topology Star
Medium Optical fiber
Bandwidth 10, 20, or 40 MHz
Distributed queue, dual bus (DQDB)
Designed to be used in MANs Each station connected to two (unidirectional)
backbone links Access method: distributed queues
Token Ring
Token ring motivation Medium access mechanism of Ethernet (CSMA/CD)
may result in collisions Data may be sent multiple times before transmission
makes it to the link Unpredictable delays Especially if traffic is heavy
Unpredictable occurrence of collisions Token ring designed to solve the above
unpredictability
Token ring IEEE 802.5 Standard sustained by IBM Published in 1989, reviewed in 1991, 1998, 2000,
2001 Still in use at some IBM sites, virtually nowhere else Work progressing on a GB version (802.5v)
Uses a token passing access method
Basic idea Stations take turns in sending data Turns are regulated by a token placeholder frame that passes from station to
station Created and regenerated by a monitor station
When a station has the token and data to send, it attaches the data to the token One station sends only one data frame at a time
Token passing illustration 1
Token passing illustration 2
Token passing illustration 3
Token passing illustration 4
Token passing steps 1. When network unoccupied, a 3-byte token circulates from station to
station 2. Token is captured by the first station with data to send 3. Station keeps token and sends a data frame 4. Data frame proceeds in the ring, being regenerated at each station 5. Intermediate stations examine the destination address and relay frame 6. The recipient recognizes its address, copies the message, checks for
errors and changes 4 bits in last byte of frame This indicates address recognized and frame copied
7. Frame then continues to the sender 1. Sender recognizes itself in the source address 2. Sender releases token into the ring 3. Sender examines the modified bits and if those are set it discards the data
frame. If not, data should be resent in the next token capture
Token ring layers
MAC sublayer Responsible for Token passing Reservation operations Creation and delivery of frames to physical layer
Three frame types Data frame Token frame Abort frame
Data frame The only frame that Carries a PDU Is addressed to a specific destination
Data frame fields Start delimiter (SD): 1 byte, alerts the receiver to a frame
arrival, allows for synchronization The J, K bits stand for non-regular encoding of binary 1
J: both differential Manchester encoding transitions are cancelled K: middle differential Manchester encoding transition is cancelled
This encoding performed by PhL => implementation dependent Data field transparency ensured
Data frame fields 2 Access control (AC): 1 byte priority subfield: 3 bits token bit subfield: when set, says this is a data frame monitor bit subfield reservation subfield: set by stations wishing the token
Data frame fields 3 Frame control (FC): 1 byte type bit subfield: control or data PDU special info subfield: 7 bits, info used by token ring
logic E.g., how to use the AC field info
Data frame fields 4 Destination address (DA): 6 bytes, physical
address of frame’s destination Source address (SA): 6 bytes, physical address
of frame’s source Data: 0 - 4500 bytes, contains the PDU PDU length/type not included
CRC: 4 bytes, CRC-32 error detecting sequence
Data frame fields 5 End delimiter (ED): 1
byte, indicates the end of sender’s data and control info PhL handles it Transparency
ensured with the J,K violations
Frame status (FS): 1 byte, set by receiver when frame was read and by the monitor when frame has been around the ring
Token frame Token: placeholder and reservation field Token frame: SD, AC, ED fields AC indicates that the frame is a token AC includes the priority and reservation fields
Abort frame Carries no information at all, only SD and ED Can be generated by Sender: to stop its own transmission Monitor: to purge an old transmission from the network
Addressing Each data frame carries two addresses Source address and destination address 2 or 6 bytes
Addresses can be local/global Destination address can be Unicast: first bit of first byte is 0 Multicast or broadcast: first bit of first byte is 1 Broadcast: all address bits are 1
Physical layer Bit and byte ordering Byte ordering: like in Ethernet Bit ordering: first bit of first byte first
Implementation: series of STP (shielded twisted pairs) sections linking stations to their neighbors
Switch Without switches disabled/disconnected nodes can stop the traffic
flow With switches Each station connected to automatic switch Switch can bypass an inactive station Station disabled: switch closes the ring without it Station comes in: NIC signals the switch and station is
brought back to the ring
Switch illustration
Multi-station access unit (MAU) Individual switches are combined into a hub
called MAU MAU can support up to 8 stations
Combining MAUs
Other issues Coding: differential Manchester Special code violations for some signal sequences
Cabling: UTP/STP UTP has data rate of 4 Mbps STP has data rate of 4 to 16 Mbps
Stations With STP: up to 250, with UTP: up to 72
Ring management Damaged frame By noise Destination station informs sender of the error Sender station should retransmit the frame
Errant (orphan) frame Frame that repeatedly circulates the ring Occurs when sender station crashes before frame
comes back Solved by the monitor station It sets the monitor bit in AC field to 1 the first round When (in a subsequent round) it finds a frame with monitor
bit 1, it drains that frame
Ring management 2 No frame/token When a station receives a frame and crashes
before forwarding it / generating a new one Solved by monitor station Monitor has timer When a frame passes the monitor, timer is set When timer expires with no frame back to monitor, this one
creates a new token
Priority and reservation levels Optional priority mechanism defined in 802.5 Allows the overriding of the equal opportunity right Allows different priority levels to station => stations
with higher priority get access to token earlier Stations with high priority get data in real time When (almost) all stations involved, no real time
3 levels Station priority level (StPr): 0 – 7 Defined by network manager, is part of station
Current priority level (CurPr) at any moment, the ring operates at one specific
priority level, named CurPr Current reservation level (CurRv) Value of last reservation made by a station
Current reservation level - more When a frame circulates, station with data to
send can make a reservation If StPr > CurRv Different strategies if frame is data/token
Hence, a station can override a reservation made by a station with lower StPr
Implementing priorities
Data frame sent by another station arrives
2nd condition: StPr > CurRv Λ StPr ≠ CurPr
Implementing priorities 2
Data frame originated by station arrives
Implementing priorities 3
Token frame arrives
If this is the responsible station, then LOWER priority (not raise)
$1 -> ≥ $2 -> >
Other procedures in the reservation process
Making a reservation CurRv := StPr, in AC field of received frame
Resetting CurRv CurRv := 0
Sending a data/token frame
Raising CurPr Responsible station Keeps track of 2 levels, the
old CurPr and the present CurPr
Uses 2 stacks for this
Lowering CurPr
Only by the responsible station
An extra step 2 missing: CurRv := 0
Example A has 2 data frames to send to C B has 2 data frames to send to A C has one data frame to send to D Token is first captured by A, when CurPr=1 and
CurRv=0.
Exp cont 1) A captures token and sends data to C (can do it, since its priority (2) is bigger
than CurPr) CurPr=1, CurRv=0 2) B forwards data frame and makes reservation (its priority bigger than CurRv) CurPr=1, CurRv=4 3) C copies data, sets frame (those 4 bits) and forwards data frame (cannot make
reservation, since its priority is smaller than CurRv) CurPr=1, CurRv=4 4) D forwards data frame CurPr=1, CurRv=4 5) A gets its frame back, drains it, then modifies CurPr to 4, CurRv to 0 (and so
becomes responsible station: OldPrSt is 1, CrtPrSt=4); it then releases token CurPr=4, CurRv=0 6) B captures token and sends data to A CurPr=4, CurRv=0 7) C forwards data frame and makes reservation (its priority bigger than CurRv) CurPr=4, CurRv=3
Exp cont 8) D forwards data frame CurPr=4, CurRv=3 9) A copies data, sets frame and forwards it; cannot make reservation CurPr=4, CurRv=3 10) B gets its frame back, drains it, releases the token CurPr=4, CurRv=3 11) C forwards token CurPr=4, CurRv=3 12) D forwards token CurPr=4, CurRv=3 13) A gets token and is responsible station so it lowers the priority, CurPr
:= 3 (=max(OldPrSt, CurRv)), CurRv:=0; OldPrSt is 1, CrtPrSt=4, 3 CurPr=3, CurRv=0 14) B gets token and sends data to A (can do it, since its priority (4) is
bigger than CurPr) CurPr=3, CurRv=0
Exp cont 15) C does not need reservation (only a free token) so it forwards data frame CurPr=3, CurRv=0 16) D forwards data frame CurPr=3, CurRv=0 17) A copies data, sets frame and forwards it; and makes reservation CurPr=3, CurRv=2 18) B gets its frame back, drains it, releases the token CurPr=3, CurRv=2 19) C captures token and sends data to D CurPr=3, CurRv=2 20) D copies data, sets frame and forwards it CurPr=3, CurRv=2 21) A forwards data frame CurPr=3, CurRv=2 22) B forwards data frame CurPr=3, CurRv=2
Exp cont 23) C gets its frame back, drains it, releases the token CurPr=3, CurRv=2 24) D forwards token CurPr=3, CurRv=2 25) A responsible to lower priority: CurPr:=2 (=max(OldPrSt, CurRv)),
CurRv:= 0; A sends data to C; OldPrSt is 1, CrtPrSt=4, 3, 2 CurPr=2, CurRv=0 26) B forwards data frame CurPr=2, CurRv=0 27) C copies data, sets frame, forwards it CurPr=2, CurRv=0 28) D forwards it CurPr=2, CurRv=0 29) A gets its frame back and drains it; it’s responsible so it sets CurPr :=
1, CurRv:= 0, and pops both stacks, no longer responsible CurPr=1, CurRv=0
Token ring requirements To be used in commercial and light industrial
environments There is a somewhat large installed base,
especially with IBM-affiliated organizations Not as popular as Ethernet More complex Eventually Ethernet caught up in terms of speed
FDDI Fiber distributed data interface 100 Mbps token ring LAN/MAN specification Introduced before Fast Ethernet Never made it to the desktop, used as backbone
network A standard on its way out Copper version abbreviated CDDI
ATM LAN
ATM LANs ATM: asynchronous transfer mode Cell relay protocol designed by ATM forum, adopted
by ITU-T Mainly a WAN Technology can be adapted to LANs
Plan We first discuss ATM technology We then study how the above applies to LANs
ATM Introduced in the early 90s, very advertised In current use WAN links inside telephone networks Broadband access lines such as DSL
Designed to Optimize the use of high-rate transmission media Provide an interface with existing systems Move functions from software to hardware domain
Problems with existing systems Packet networks Packet: overhead bits + data Various/variable sizes and intricacies of packets Packets of 65545 bytes coexist with packets of 200
bytes Consequence Unpredictable traffic Devices have elaborate software to manage
packets Internetworking among different packet networks is
slow + expensive at best, impossible at worst
Cell networks Cell Small data unit of fixed size Basic unit of data exchange
Advantages Cell routing done in hardware (=> fast) Hardware can be set up to handle broadcast Small cells do not block lines for long => quality of
service Cells appear as delivered continuously and in order
=> real-time transmission
An ATM cell
Switches ATM is a cell-switched network End points: user access devices Switches UNI: user network interface Connects end points to switches
NNI: network-to-network interface Connects the switches
Virtual circuits ATM networks are connection-oriented Sending a data requires sending 1st a packet to set
up the connection Connections = virtual circuits In analogy to physical circuits used in telephone systems Have unique identifiers
Permanent virtual circuits allowed in ATM networks Similar to leased lines of telephones
A virtual circuit
Elements of a virtual connection Transmission paths (TP) Physical connection between switches or a switch
and an end point Intuitively: set of all highways between 2 cities
Virtual paths (VP) Provides a connection/set of connections between
switches Intuitively: one highway connecting 2 cities
Virtual circuits (VC) Basis of cell networks Relays all cells of a message, in order Intuitively: highway lane
TP, VP, VC
Identifiers Virtual connection defined by a pair of IDs A virtual path identifier (VPI) A virtual circuit identifier (VCI)
For UNI interface VPI is 8 bits, VCI 16 bits
For NNI interface VPI is 12 bits, VCI 16 bits
Routing Switches route the cells between the end points 2 types of switches (for efficiency) VP switches VPC switches
Allow for hierarchical routing Mostly VP switches (use only VPI for routing) Switches interacting with end points: VPC
ATM reference model
ATM layers usage End points Use all three levels
Switches Use only the 2 bottom layers
ATM layers usage illustration
Physical layer Defines: transmission medium, voltages, bit
transmission, encoding, electrical-to- optical transformation
Not a particular set of rules ATM cells could be sent by themselves or packaged
inside the payload of other carriers => ATM independent of the transmission medium
ATM layer Deals with cells and transport Layout of cells Management of connections and traffic Routing Congestion control
Accepts 48-byte segments from AAL (application adaptation layer), adds header (5 bytes) and produces the cells (53 bytes)
Application Adaptation Layer (AAL) Most applications do not want to work directly
with cells AAL allows users to send packets larger than a
cell
High data rate in ATM 155 and 622 Mbps, higher speeds also supported 155 Mbps: what is needed for high-definition TV 622 Mbps: four 155 Mbps channels Attractive speed to be used in a LAN
Other ATM advantages for a LAN ATM technology supports different types of
connections between end users Permanent and temporary connections
ATM technology supports multimedia communication Variety of bandwidths for different applications Guarantees a bandwidth of several Mbps for real-
time video Easily adaptable for expansion
ATM LAN architecture
Pure ATM Architecture ATM switch connects stations of a LAN Like in Ethernet
Stations Can communicate at 155/622 Mbps Use VPI and VCI instead of source/destination address
Drawback System has to be built from scratch Existing LANs cannot be upgraded into pure ATM LANs
Pure ATM
Legacy LAN architecture ATM technology is used as a backbone to
connect traditional LANs Stations on the same LAN can use format and
data rate of their own LAN Stations on different LANs use a converter to
change the frame format Output from several LANs can be multiplexed to
create a high data rate input to ATM switch
Legacy LAN
Mixed architecture Best solution: mix the pure and the legacy Existing LANs are kept New stations can be connected directly to the ATM switch Gradual migration of legacy LANs onto ATM LANs
Question How stations in traditional Ethernet communicate with
stations directly connected to the switch (or vice versa)
Mixed architecture ATM LAN
We continue ATM LANs next time!