Recap: Circuit-SwitchingLet's go back one set of notes and recap circuit-switching networks. In this case, a point-to-point connection is established between two devices. This channel is dedicated to these two devices with the full bandwidth available. It then remains connected for the duration of the transmission.This means there are minimal delays due to the dedication of the channel. However, this is highly inefficient compared to packet-switching networks which is the next topic to discuss.
Packet-SwitchingPacket-switching networks are much more efficient than circuit-switching networks. This is because data is segmented down into small 'chunks', each of which is called a packet.This packet contains a destination and a source address, as well as, lots of other information which we will discuss later. This allows for better use of the network and allows for more people to communicate on the network at any given time.Packet-switching is used to maximise the bandwidth of the network. It was first proposed for military use in the 1960s, however, it was later implemented into general 'home' networks in 1968.
Network TopologiesThere are three topologies that we will focus on first: Ring Network Bus Network Star Network Ring NetworkIn a ring network, each 'node' connects to exactly two other nodes. The data then travels in a ring with each node handling all the traffic. Every packet which is sent can be received and handled by every node in the network.The advantages of a ring network is an ease in configuration, an ease in fault finding, no central management is required and it's easy to implement or remove nodes from the network. Ring networks can also span larger distances compared to other topologies. This is because each node regenerates messages as they pass through it.However, the disadvantages are if there is a failure in just one node, the network breaks. There is a communication delay which is directly proportional to the number of nodes installed in the network. The bandwidth is also shared between all the nodes.
Bus NetworkWhen using a bus network, you'll see that all the connected nodes are simply daisy chained with one another. Also, just like the ring network, all the nodes receive the same network traffic. Each device is connected to a central cable, called the bus or backbone.The advantages to implementing a bus network is that it's easy to add and remove nodes. It's also relatively easy to find faults within the network and rectify them. They are also relatively inexpensive and are used by Ethernet systems.However, the disadvantages are that all network traffic is received by all the nodes and if the network is severed, no node can receive data. All nodes within the network have the same transmission priority.In order to gain allocate access to the network, Carrier Sense Multiple Access (CSMA), a form of media access control is used. We will talk about this later.
Star NetworkThe star network topology is the most widely used and popular form of network as it uses the Ethernet standard, an architecture which supports data transfer rates of 10 Mbps. Each node is connected to a central 'hub' which acts as a 'gateway' for the traffic. The central hub will then broadcast messages to all the nodes in the network. This is much more resilient than the bus and ring networks.The advantages of using a star network is that the failure of a node does not affect the remainder of the network, like it would with a bus or ring topology. It's easy to detect faults and expanding the network is not challenging. Compared to other topologies, there is an performance advantage especially if there are less nodes and cables in comparison to a bus or ring network. Devices are also isolated which makes fault finding even easier.However, the disadvantages are that the hub can act as a bottle neck and if it fails, the network is unusable. Cost is also a problem, a hub can be very expensive and a lot of cable is needed to connect each node to the hub.
Token Ring vs. EthernetWhen you increase the number of nodes on network, there is more data and traffic. This results in more errors due to collisions. A collision is where two packets of data collide on the network, meaning we lose them and they have to be resent. This only congests the network even further.The Token Ring solution involves a 'token' being passed around the network. When a node has the token, it has the right to transmit data. There is also a Token Bus solution which uses a token to regulate traffic on the bus. The only difference being that the endpoints of the bus do not meet to form a physical ring.The Ethernet solution, on the other hand, uses Carrier-Sense Multiple Access w/ Collision Detection (CSMA/CD). This is a set of rules which determines how network devices respond when two devices attempt to use a data channel simultaneously and cause a collision.A standard Ethernet network will use CSMA/CD to monitor the traffic in the network at specific nodes. If no transmission is taking place, that specific node can transmit. If, however, two nodes are trying to transmit simultaneously, this causes a collision, which is detected at all nodes. After a random time interval, the nodes that have collided attempt to transmit again. If another collision occurs, the time interval is increased step by step. This is known as exponential back off.CSMA/CD is a modification of Carrier Sense Multiple Access. It improves performance by terminating the transmission as soon as a collision is detected. It then shortens the time required before a re-transmission can be attempted.
Mesh NetworkA mesh network involves devices being interconnected, leaving many redundant connections between nodes. In a true mesh topology, every node has a connection to every other node in the network.There are two types of mesh topologies; full mesh and partial mesh. Full mesh topology occurs when every node has a circuit connecting it to every other node in a network. Full mesh is very expensive to implement but yields the greatest amount of redundancy, so in the event that one of those nodes fails, network traffic can be directed to any of the other nodes. Full mesh is usually reserved for backbone networks.Partial mesh topology is less expensive to implement and yields less redundancy than full mesh topology. With partial mesh, some nodes are organised in a full mesh scheme but others are only connected to one or two in the network. Partial mesh topology is commonly found in peripheral networks connected to a full meshed backbone.
Mobile Ad Hoc Networks (MANet)A Mobile Ad Hoc Network (MANet) is a self configuring mobile network. When I say self-configuring, I mean each node is a router and the network structure changes as the nodes move. No infrastructure is therefore needed, such as cables, power or static routers.A more formal definition would be a collection of wireless mobile hosts forming a temporary network without the aid of any centralised administration or standard support services.Often the MANet topology is dynamic - nodes enter and leave the network continuously. There is no centralised control or fixed infrastructure to support network configuration or reconfiguration.
Ad-Hoc NetworksWhy would you implement a MANet? Well, mobile nodes have a limited communication range which reduce battery drain. MANet enables spatial reuse of limited bandwidth which increases the network capacity. When connecting all the nodes in the network, each node is a; packet source, packet sink, router etc. Nodes must route packets for other nodes to keep the network fully connected. However, there is a big problem in determining where a destination node is located relative to a sending node.Route-finding is currently an area of much research. This involves determining an 'optimal' way to find 'optimal' routes. In terms of dynamic links, any broken links must be updated when a node moves out of communication range with another node. New links must be formed when a node moves into communication range with another node. Based on this new information, routes must be modified. The frequency of route changes is a function of node mobility.However, there are some major disadvantages with ad-hoc networks. Firstly, there is routing performance. Route changes over time due to node mobility and they need to avoid long delays when sending packets but would like to avoid lots of route maintenance overhead. We want as many participating nodes as possible for greater aggregate throughput, shorter paths, and a smaller chance of partition.There can also be a poor quality of service in terms of; link variability, route variability, collisions and congestions. There is also some new vulnerabilities and complexities that compromise security. They can be a denial of service where nodes agree to route packets but then fail to do so. There can also be broken, malicious or selfish nodes.