معمول ،به مدیران شبکه این اجازه را می دهد که بر مبنای اینکه چطور میزبان ها بصورت فیزیکی به شبکه متصل هستند به آنها آدرس IP تخصیص دهد، Subnetting  یک پیشرفت واقعی برای کسانی است که از یک شبکه ip  بزرگ نگهداری می کنند . اگرچه این ضعف خاص خودش را داراست و هنوز هم جا برای پیشرفت دارد.
اصلی ترین ضعف Subnetting  معمول در حقیقت این است که چطور آدرس های IP تفسیر و قابل استفاده برای مسیر یابی شوند.
در شبکه های بزرگ نیاز است که  تمام شبکه را فقط به یک سطح زیر شبکه تقسیم کنیم که این بهترین استفاده از بلاک IP ادرسمان را بیان نمی کند، ما ممکن است دچار مشکلاتی شویم اگر ما زیر شبکه هایی با تعداد میزبان های مختلفی در آنها داشته باشیم.
ID  زیر شبکه باید بر مبنای اینکه هرکدام از زیر شبکه ها بیشترین مقدار  میزبان را داشته باشد، انتخاب شود.
این حتی در شبکه های کوچک هم بی بهره است و ممکن است  منجر به استفاده از بلاک های آدرس اضافی و هدر رفتن مقدار زیادی از آدرس در بلاک ها شود.
برای مثال یک کمپانی کوچک با  شبکه کلاس C ، 201.45.222.0/24 در نظر بگیرید، آنها دارای 6 زیر شبکه در شبکه خود می باشند، چهار زیرشبکه اول (S1,S2,S3,S4) نسبتا کوچکند، و هر کدام فقط 10 میزبان را شامل می شوند.
به هر حال ، یکی از آنها S5  که برای محصوات آنهاست محتوی 50 میزبان می باشد، و سرانجام آخرین S6 برای گروه های مهندسی و پیشرفت میباشد که محتوی 100 میزبان میباشد.

 

بنابراین مجموع میزبان هایی که آنها نیاز دارند 196 عدد میباشد که بدون subnetting  ما به اندازه کافی میزبان درکلاس C داریم تا تمام آنها را انجام دهیم . به هر حال زمانی که می خواهیم زیر شبکه انجام دهیم با مشکل جدی روبرو هستیم، بمنظور  داشتن شش زیر شبکه ما احتیاج به  سه بیت برای id  زیر شبکه داریم و این کار باعث میشه فقط 5 بیت برای میزبان ها باقی بماند و این به این معنی است که هر زیر شبکه ظرفیت 30 میزبان را دارد که در شکل زیر مشاهده می کنید. این برای زیر شبکه های کوچکتر کافی ولی برای بزرگتر از آن کافی نیست، تنها راه حل برای زیر شبکه معمول این است که یک بلاک کلاس C  دیگری برای دو زیر شبکه بزرگ تهیه کنیم که این کار  گران و باعث به هدر رفتن IP  ادرس های زیادی میشود.


راه حل این وضعیت بالا بردن طرح آدرس دهی پایه زیر شبکه است  که  VLSM   نامیده میشود، VLSM  در ابتدا پیچیده بنظر میرسد اما فهمیدن آن بسیار سادست اگر شما درک خوبی از Subnetting  داشته باشید.
ایده این است که شما  شبکه را Subnet  کنید و شما زیرشبکه را   دوباره Subnet  کنید به همان طریقی که شبکه را Subnet کرده اید، در واقع شما می توانید این کار را چندین بار انجام دهید، ساختن Subnet  ها از Subnet  ها و به همان دفعاتی که شما نیاز دارید. این امکان وجود دارد که شما این تکه تکه کردن را فقط برای بعضی از Subnet  ها انجام دهید. و این در کمپانی مثال ما به این معنی است که  می تواند شش زیر شبکه را برای احتیاج  شبکه خود ایجاد کنند که در شکل زیر نشان داده شده است.


VLSM subnetting به همان روش Subnetting  معمولی انجام میشود ، و بخاطر  رول های اضافی آن کمی پیچیده بنظر می رسد.شما Subnetting  اولیه را در شبکه خود انجام می دهید سپس یک یا چند تا از آنها را به اندازه ای که نیاز دارید میشکنید.
شما بیت ها را به Subnet Mask  برای هر "sub-subnets"   و  "sub-sub-subnets"برای رسیدن به اندازه کوچک مورد نظرتا اضافه می کنید.در VLSM  علامت /  که در آخر می اید  بجای Subnet Mask  باینری است و بیشتر استفاده می شود .VLSM  از لحاظ  کار بسیار شبیه CIDR  عمل می کند برای همین است که استفاده میشود.
اکنون به مثال خود بر می گردیم و میبینیم که چطور  هر چیزی را مناسب با نیاز های خود می توانیم آماده کنیم ما با شبکه کلاس C  و آدرس 201.45.222.0/24  شروع کردیم  سپس ما 3 زیر شبکه را مانند زیر انجام دادیم:

1. ابتدا ما  subnetting  اولیه  را با استفاده از 1 بیت برای Subnet ID  انجام دادیم، و 7 بیت برای میزبان باقی ماند، که این بما دو زیر شبکه ی 201.45.222.0/25 ,  و   201.45.222.128/25 را بوجود آورد،  که هر کدام از آنها می توانند  ماگزیمم مقدار 126 میزبان را داشته باشند، ما اولی را برای S6  و 100 میزبان آن تنظیم کردیم.

2. ما دومین زیر شبکه را 201.45.222.128/25 ، به دو زیر شبکه دیگر تقسیم کردیم این کار را با استفاده از یک بیت از هفت بیت باقی مانده برای میزبان انجام دادیم، با این کار دو زیر شبکه  201.45.222.128/26   و  201.45.222.192/26,، برای ما تولید شد که هر کدام از آنها می توانستند 62 میزبان را داشته باشند  و ما یکی از آنها را برای S5  و 50 میزبان آن بکار بردیم

3. ما دومین زیر شبکه را 201.45.222.192/26 به دو زیر شبکه دیگر تقسیم کردیم  این کار را با استفاده از دو بیت از شش بیت باقی مانده برای میزبان انجام دادیم، با این کار چهار زیر شبکه  برای ما بوجود آمد که بترتیب آنها را برای S1,S2,S3,S4 استفاده کردیم.


VLSM  پیشرفت های زیادی در زمینه انعطاف پذیری و بازده ی Subnetting  داشته است ، بمنظور استفاده از آن روتر هایی که پروتکل  VLSM-capable routing را پشتی بانی می کنند باید بکار گرفته شوند.
VLSM  به دقت بیشتری  در مورد جداول مسیر یابی ، برای مطمعن شدن از اینکه هیچ گونه ابهامی در مورد چگونگی تفسیر آدرس ها در شبکه،  وجود ندارد، نیاز دارد.