Skip to content
geeksforgeeks
  • Tutorials
    • Python
    • Java
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
    • Practice Coding Problems
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Aptitude
  • Engineering Mathematics
  • Discrete Mathematics
  • Operating System
  • DBMS
  • Computer Networks
  • Digital Logic and Design
  • C Programming
  • Data Structures
  • Algorithms
  • Theory of Computation
  • Compiler Design
  • Computer Org and Architecture
Open In App
Next Article:
Channel Allocation Problem in Computer Network
Next article icon

Channel Allocation Problem in Computer Network

Last Updated : 30 Jan, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

The Channel Allocation Problem arises in communication networks when multiple devices need to share a limited number of communication channels. The goal is to efficiently allocate channels to devices while avoiding interference, reducing congestion, and optimizing network performance. Channel allocation is a process in which a single channel is divided and allotted to multiple users to carry user specific tasks. The user's quantity may vary every time the process takes place.

If there are N number of users and the channel is divided into N equal-sized sub-channels then each user is assigned one portion. If the number of users is small and doesn’t vary at times, then Frequency Division Multiplexing can be used as it is a simple and efficient channel bandwidth-allocating technique. 

Channel Allocation Schemes

Channel allocation problem can be solved by two schemes: Static Channel Allocation in LANs and MANs, and Dynamic Channel Allocation.  

Channel Allocation ProblemThese are explained as follows. 

Static Channel Allocation in LANs and MANs

It is the classical or traditional approach of allocating a single channel among multiple competing users using Frequency Division Multiplexing (FDM). if there are N users, the frequency channel is divided into N equal-sized portions (bandwidth), and each user is assigned one portion. since each user has a private frequency band, there is no interference between users. 

However, it is not suitable in case of a large number of users with variable bandwidth requirements.
It is not efficient to divide into a fixed number of blocks.  

T = 1/(U*C-L)

T(FDM) = N*T(1/U(C/N)-L/N)

where,

T = mean time delay,
C = capacity of channel,
L = arrival rate of frames,
1/U = bits/frame,
N = number of sub channels,
T(FDM) = Frequency Division Multiplexing Time

Dynamic Channel Allocation

In dynamic channel allocation scheme, frequency bands are not permanently assigned to the users. Instead channels are allotted to users dynamically as needed, from a central pool. The allocation is done considering a number of parameters so that transmission interference is minimized.

This allocation scheme optimises bandwidth usage and results is faster transmissions.

Dynamic channel allocation is further divided into:

  1. Centralised Allocation
  2. Distributed Allocation 

Some of the possible assumptions include: 

  • Station Model: Assumes that each of N stations independently produce frames. The probability of producing a packet in the interval IDt where I is the constant arrival rate of new frames. 
  • Single Channel Assumption: In this allocation all stations are equivalent and can send and receive on that channel. 
  • Collision Assumption: If two frames overlap in time-wise, then that's collision. Any collision is an error, and both frames must re transmitted. Collisions are only possible error. 

Time can be divided into Slotted or Continuous and Stations can sense a channel is busy before they try it. 

Protocol Assumption: 

  • N independent stations.
  • A station is blocked until its generated frame is transmitted.
  • Probability of a frame being generated in a period of length Dt is IDt where I is the arrival rate of frames.
  • Only a single Channel available.
  • Time can be either: Continuous or slotted.
  • Carrier Sense: A station can sense if a channel is already busy before transmission.
  • No Carrier Sense: Time out used to sense loss data.

Next Article
Channel Allocation Problem in Computer Network

M

mks075
Improve
Article Tags :
  • Computer Networks
  • GATE CS

Similar Reads

    Channel Allocation Strategies in Computer Network
    Channel Allocation means to allocate the available channels to the cells in a cellular system. When a user wants to make a call request then by using channel allocation strategies their requests are fulfilled. Channel Allocation Strategies are designed in such a way that there is efficient use of fr
    3 min read
    Capacity of a channel in Computer Network
    By capacity of a channel, it means the capacity of the transmission medium (wire or link). Capacity is the number of bits the transmission medium can hold. So basically there are 2 types of channels – Full duplex and half duplex. Half duplex - the transmission can happen in one direction at a time.F
    2 min read
    CATA protocol in Computer Network
    Collision Avoidance Time Allocation (CATA) Protocol is a Contention Based MAC Protocols with Reservation which is based on dynamic topology dependent transmission scheduling. In this, time is broken into frames, every frame is divided into slots, and each slots is divided into 5 mini-slots. Initial
    3 min read
    Multiple Access Protocols in Computer Network
    Multiple Access Protocols are methods used in computer networks to control how data is transmitted when multiple devices are trying to communicate over the same network. These protocols ensure that data packets are sent and received efficiently, without collisions or interference. They help manage t
    9 min read
    Virtual Circuit in Computer Network
    Virtual Circuit is the computer network providing connection-oriented service. It is a connection-oriented network. In virtual circuit resource are reserve for the time interval of data transmission between two nodes. This network is a highly reliable medium of transfer. Virtual circuits are costly
    2 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences