ÖnsÖz tezimin hazırlanması sırasında yardımlarını

236
ii ÖNSÖZ Tezimin hazırlanması sırasında yardımlarını esirgemeyen tez danışmanım Prof. Dr. Günsel Durusoy’a; ayrıca tüm yaşamım boyunca bana daima destek olan ve başarımın en büyük kaynağı olan aileme sonsuz sevgi ve teşekkürlerimi sunarım. Mayıs, 2005 Sinan İLKİZ

Upload: others

Post on 27-Feb-2022

23 views

Category:

Documents


0 download

TRANSCRIPT

ii

ÖNSÖZ

Tezimin hazırlanması sırasında yardımlarını esirgemeyen tez danışmanım Prof. Dr.

Günsel Durusoy’a; ayrıca tüm yaşamım boyunca bana daima destek olan ve

başarımın en büyük kaynağı olan aileme sonsuz sevgi ve teşekkürlerimi sunarım.

Mayıs, 2005 Sinan İLKİZ

iii

ĠÇĠNDEKĠLER

KISALTMALAR ....................................................................................................... v

TABLO LĠSTESĠ ..................................................................................................... vii

ġEKĠL LĠSTESĠ ...................................................................................................... viii

ÖZET ......................................................................................................................... xii

SUMMARY ............................................................................................................. xiv

1. GiriĢ ......................................................................................................................... 1

2. YEREL ġEBEKEDE ÇOK HEDEFLĠ ĠLETĠM ................................................ 4

2.1. Çok Hedefli İletimin Ortaya Çıkışı ................................................................... 4

2.2. Internet Grup Yönetim Protokolü (IGMP) ........................................................ 8

2.2.1. Birinci Sürüm Internet Grup Yönetim Protokolü ...................................... 8

2.2.2 İkinci Sürüm Internet Grup Yönetim Protokolü (IGMPv2) ...................... 11

2.2.3. Üçüncü Sürüm Internet Grup Yönetim Protokolü (IGMPv3).................. 21

2.3. Çok Hedefli Mesajların Ethernet Üzerinden İletimi ....................................... 35

3. ÇOK HEDEFLĠ ĠLETĠMDE YÖNLENDĠRME .............................................. 38

3.1 Çok Hedefli İletim Yönlendirmesine Giriş ...................................................... 38

3.1.1. Yayılmış Ağaç Çok hedefli İletim Yönlendirmesi................................... 40

3.1.2. Uzaklık Vektörü Çok hedefli İletim Yönlendirmesi ................................ 41

3.1.3. Bağlantı Durumu Çok Hedefli İletim Yönlendirmesi .............................. 46

3.1.4. ÇHİ Yönlendirmesinin Hiyerarşik Düzende Yapılması .......................... 47

3.2. Protokolden Bağımsız Çok Hedefli İletim Seyrek Modu (PIM – SM) ........... 48

3.2.1. PIM-SM Protokol Spesifikasyonu ........................................................... 52

4. ÇOK HEDEFLĠ ĠLETĠM D SINIFI ADRES YÖNETĠMĠ .............................. 70

4.1. IETF Çok Hedefli İletim Adres Tahsis Mimarisi ........................................... 70

4.2. Yönetimsel Olarak Belirlenmiş Kapsamların Kullanımı ................................ 75

4.3. GLOP Adresleme Altyapısı ............................................................................ 77

4.4. Tek Hedefli İletim Şebekelerinin Önek Olarak Kullanılması ......................... 78

5. ÇOK HEDEFLĠ ĠLETĠMĠN INTERNET ÜZERĠNDE KULLANIMI .......... 80

5.1. ÇHİ’in Gelişimi ve Çok Hedefli İletim Omurgası (MBONE) ........................ 80

5.2. Internet Üzerinde Kullanılan Kısa Vadeli Çözümler ..................................... 82

5.2.1. Çok Hedefli İletim Kaynak Keşif Protokolü (MSDP) ............................. 84

5.3. Uzun Vadeli Çözümler .................................................................................... 91

6. ÇOK HEDEFLĠ ĠLETĠM GÜVENLĠĞĠ ........................................................... 94

6.1. Çok Hedefli İletim Güvenlik Uzayı ................................................................ 95

6.1.1. Grup Karakteristikleri .............................................................................. 96

6.1.2. Güvenlik Gereksinimleri .......................................................................... 97

6.1.3. Performans Parametreleri ....................................................................... 102

iv

6.1.4. Çok Hedefli İletim ve Grup Güvenlik Çatısı ......................................... 104

6.2. Çok Hedefli İletimde İçerik Güvenliği ......................................................... 108

6.2.1. Grup Anahtar Yönetimi ......................................................................... 109

6.2.1.1. Grup Güvenlik İlişkileri (GSA) Modeli ve Yönetimi ..................... 110

6.2.1.2. Grup Anahtar Yönetim Mimarileri ................................................. 115

6.2.1.3. Grup Anahtar Dağıtımı ve Tekrar Anahtarlama Algoritmaları....... 129

6.2.2. Kaynak Kimlik Doğrulaması ve Erişim Kontrolü ................................. 153

6.2.2.1. Özet temelli doğrulama ................................................................... 155

6.2.2.2. Mesaj Doğrulama Kodları (MAC) Temelli Veri Dönüşümleri ...... 166

6.2.3. Bilgi Korsanlığı ...................................................................................... 171

6.2.4. Çok Hedefli İletimde Güvenlik Politikalarının Kullanımı ..................... 174

6.2.4.1. Ismene Politika Tanımlama Dili ..................................................... 181

6.2.4.3 DCCM Kriptografik İçerik Müzakere Şablonu (CCNT) ................. 182

6.2.4.3. Grup Güvenlik Politikası “Token”’i (GSPT) .................................. 182

6.3. Çok Hedefli İletim Altyapı Güvenliği........................................................... 186

6.3.1. Yerel Şebeke Güvenliği ......................................................................... 188

6.3.2. Çok Hedefli İletim Yönlendirme Altyapısı Güvenliği ........................... 195

6.3.2.1. PIM-SIM Protokolü Güvenliği ....................................................... 197

6.3.2.2. MSDP Güvenliği ............................................................................. 206

7. SONUÇ ................................................................................................................ 208

KAYNAKLAR ....................................................................................................... 214

ÖZGEÇMĠġ ............................................................................................................ 223

v

KISALTMALAR

(S,G): (Source IP, Group IP)

AAP: Address Allocation Protocol

AH: Authentication Header

AKD: Area Key Distributor

BGMP: Border Getaway Multicast Protocol

BGP: Border Getaway Protocol

BSR: Bootstrap Router

CBT: Core Based Tree

CCNT: Cryptographic Context Negotiation Template

ÇHĠ: Çok Hedefli İletim

DCCM: Dynamic Cryptographic Context Management

DDoS: Distributed Denial of Service

DKD: Domain Key Distributor

DP: Dense Mode

DR: Designated Router

DVMRP: Distance Vector Multicast Protocol

EMSS: Efficient Authentication and S. of Mcast Streams over Lossy Channels

GDAS: Grup Denetleyicisi ve Anahtar Sunucusu

GMI: Group Membership Interval

GKMP: Group Key Management Protocol

GSA: Group Security Association

GSAKMP: Group Security Association and Key Management Protocol

GSEC: Group Security

GSPT: Group Security Policy Token

ICMP: Internet Control Massage Protocol

IEEE: Institute of Electrical & Electronics Engineers

IGMP: Internet Group Management Protocol

IETF: Internet Engineering Task Force

IKAM: Intra-Domain Group Key Management

IP: Internet Protocol

IRTF: Internet Engineering Task Force

LAN: Local Area Network

LMQT: Last Member Query Count

LKH: Logical Key Hierarchy

MAAS: Multicast Address Allocation Server

MAC: Medium Access Controller

MADCAP: Multicast Address Dynamic Client Allocation Protocol

MALLOC: Multicast Address Allocation Group

MARKS: Zero SideEffect Key Mgmt u. Arbitrarily Revealed Key Sequences

MBONE: Multicast Backbone

MBGP: Multiprotocol Extensions to BGP

MIX: Multicast Friendly Internet Exchange

vi

MOSPF: Multicast Extentions to Open Shortest Path First

MRIB: Multicast Routing Information Base

MSDP: Multicast Source Discovery Protocol

MZAP: Multicast-Scope Zone Announcement Protocol

NIC: Network Interface Card

NMR: Non-Member Report

OFC: Oneway Function Chain

OFT: Oneway Function Trees

PBBR: PIM Border Gateway Router

PMBR: PIM Multicast Border Router

PKI: Public Key Infrastructure

PIM: Protocol Independent Multicast

PP: Prune Pending

PPT: Prune Pending Timer

SMT: Steiner Minimal Trees

SPT: Shortest Path Tree

QQI: Queriers Query Interval

QQIC: Queriers Query Interval Code

QRV: Queriers Robustness Value

RAMA: Root Addressed Multicast Architecture

RFC: Requests For Comments

RP: Randezvous Point

RPF: Reverse Path Forwarding

RPT: Rendezvous Point Tree

SM: Sparse Mode

SMT: Steiner Minimal Trees

SKMP-PIM: Scalable Key Management Protocol for PIM

SPT: Shortest Path Tree

TADM: Tek Anahtar Dağıtıcı Merkezli

TESLA: Timed Efficient Stream Loss-Tolerant Authentication

TIB: Tree Information Base

TTL: Time to Live

TVL: Type, Value, Length

vii

TABLO LĠSTESĠ

Tablo 2.1 - IGMP v3 mesaj tipleri ............................................................................ 23

Tablo 2.2 - Sistemler için durum değişikliği raporları .............................................. 28

Tablo 2.3 - Kayıtların oluşturulmasını düzenleyen tablo .......................................... 28

Tablo 2.4 - Sistemlerde güncel durum kaydının hesaplanması ................................. 30

Tablo 2.5 - Yönlendiricilerdeki grup zamanlayıcılarının rolü................................... 31

Tablo 2.6 - Yönlendirme protokolüne gönderilmekte olan bildirimler ..................... 32

Tablo 2.7 - Güncel durum raporu alındığında yönlendiricilerde yapılan işler .......... 32

Tablo 2.8 - Filtre durumu değişimi ve kaynak listesi değişimi kayıtları ................... 33

Tablo 6.1 - Çizge türlerine göre anahtar dağılımları ............................................... 135

Tablo 6.2 - Şifreleme ve deşifre etme maliyeti ....................................................... 141

Tablo 6.3 - OFT algoritmasındaki maliyetler .......................................................... 147

Tablo 6.4 - Grup anahtar yönetimi algoritmalarının karşılaştırılması ..................... 152

Tablo 6.5 - Algoritmaların bellek gereksinimi yönünden karşılaştırılması ............. 152

Tablo 6.6 - Rol tanımlamaları ................................................................................. 175

Tablo 6.7 - Grup iletişimine dahil olan varlıkların rolleri ....................................... 176

viii

ġEKĠL LĠSTESĠ

ġekil 2.1 - Çok hedefli iletim IP modeli ...................................................................... 6

ġekil 2.2 - IGMPv1 mesajları başlık yapısı (RFC 1112) ............................................. 9

ġekil 2.3 - IGMPv1 sistemler için durum diyagramı (RFC 1112) ............................. 11

ġekil 2.4 - IGMPv2 mesajları başlık yapısı (RFC 2236) ........................................... 12

ġekil 2.5 - IGMPv2 sistem için durum diyagramı (RFC 2236) ................................. 15

ġekil 2.6 - IGMPv2 sistemler için arabağdaşım durumları (RFC 2236) ................... 15

ġekil 2.7 - IGMPv2 yönlendirici durum diyagramı (RFC 2236) ............................... 16

ġekil 2.8 - IGMP v2 sorgulayan yönlendirici durum diyagramı (RFC 2236) ........... 18

ġekil 2.9 - IGMPv3 üyelik sorgu mesajları başlık yapısı (RFC 3376) ...................... 23

ġekil 2.10 – IGMPv3 maksimum yanıt kodu............................................................. 23

ġekil 2.11 – IGMPv3 QQIC alanı .............................................................................. 24

ġekil 2.12 - IGMPv3 üyelik rapor mesajı başlık yapısı (RFC 3376) ......................... 25

ġekil 2.13 - IGMPv3 üyelik rapor mesajlarında bulunan grup kayıtları yapısı ......... 26

ġekil 2.14 – Ethernet MAC adresi yapısı .................................................................. 36

ġekil 2.15 – IP ÇHİ adresleri ile Ethernet MAC adreslerinin eşlenmesi ................... 36

ġekil 2.16 – Tek bir MAC adresine eşlenen çok hedefli iletim adresleri .................. 37

ġekil 3.1 - Ters yol iletim örneği ............................................................................... 43

ġekil 3.2 – PIM kaydolma durum diyagramı ............................................................. 59

ġekil 3.3 – (*,*,RP) katılım/budama aşağıakım durum diyagramı ............................ 61

ġekil 3.4 – (S,G,rpt) katılım/budama aşağıakım durum diyagramı ........................... 62

ġekil 4.1 – Çok hedefli iletim adres yönetim ve tahsis mimarisi............................... 72

ġekil 4.2 – GLOP adres yapısı ................................................................................... 77

ġekil 4.3 – Grup adreslerinde tek hedefli iletim adres öneki kullanımı..................... 79

ġekil 5.1 – 1994 yılındaki MBONE omurgası ........................................................... 81

ġekil 5.2 – SA mesajının izlediği yol ........................................................................ 87

ġekil 5.3 - MSDP durum makinası diyagramı ........................................................... 89

ġekil 6.1 – Temel güvenlik sorunlarına topolojik bakış ............................................ 99

ġekil 6.2 - Çok hedefli iletim ve grup güvenlik çatısı ............................................. 104

ix

ġekil 6.3 – Grup anahtar yönetimi modeli ............................................................... 110

ġekil 6.4 – İki sistem arasındaki güvenlik ilişkisi ................................................... 111

ġekil 6.5 – GSA yapısı ............................................................................................. 114

ġekil 6.5 – IKAM Bölge yapısı ............................................................................... 118

ġekil 6.6 – IKAM Internet topolojisi ....................................................................... 119

ġekil 6.7 – Iolus mimarisindeki hiyerarşik yapı ...................................................... 125

ġekil 6.8 – Yığın işleme ve ileriye dönük güvenlik ................................................. 130

ġekil 6.9 – MARKS algoritmasındaki anahtar dağıtımı .......................................... 131

ġekil 6.10 – LKH algoritmasında örnek anahtar çizgesi ......................................... 133

ġekil 6.11 – Yıldız dizilimli çizgede grup üyeliğinin değişimi ............................... 136

ġekil 6.12 – Ağaç dizilimli çizgede gruptan ayrılma ve gruba katılma ................... 137

ġekil 6.13 – OFT hiyerarşisi .................................................................................... 145

ġekil 6.14 – OFT algoritmasında gruba yeni bir üyenin katılması .......................... 146

ġekil 6.15 – LKH algoritmasında OFC kullanımı ................................................... 149

ġekil 6.16 – Yıldız zincirleme tekniği ..................................................................... 156

ġekil 6.18 – Blok imzalama tekniklerinde imza için harcanan zamanlar ................ 157

ġekil 6.19 – Özet zincirleme tekniği ve gönderilen paketler ................................... 159

ġekil 7.19 – EMSS zincirleme yapısı örneği ........................................................... 161

ġekil 6.21 – EMSS benzetim sonuçları.................................................................... 162

ġekil 6.22 – Uzatılmış zincir algoritması örneği (a=3, p=2) ................................... 163

ġekil 6.23 – Üst üste bindirme tekniği, r = 2 ........................................................... 165

ġekil 6.24 – Temel TESLA yapısındaki paketler .................................................... 167

ġekil 6.25 – TESLA algoritmasında anahtar zincirleri kullanımı ........................... 169

ġekil 6.26 – Bilgi gizleme teknikleri ....................................................................... 173

ġekil 6.27 – Grup güvenlik çatısı dağıtım şeması ................................................... 176

ġekil 6.28 – GSPT bileşenleri .................................................................................. 183

ġekil 6.29 – GSPT mekanizmalar bölümü alanları ve GSA karşılıkları.................. 184

ġekil 6.30 – Altyapı Güvenliği Bileşenleri .............................................................. 187

ġekil 6.31 – Çok hedefli iletim erişim “token”’i uygulaması .................................. 190

ġekil 6.32 – Gothic içerisindeki sistemler ............................................................... 192

ġekil 6.33 – Gothic içerisindeki yetkilendirme süreci ............................................. 193

ġekil 6.34 – PIM mesajlarında doğrulamanın kullanımı, AH başlık yapısı ............ 200

ġekil 6.35 – AH başlık yapısı .................................................................................. 201

ġekil 6.34 – SKMP-PIM protokolünde kullanılan anahtar yönetim anahtarları ...... 205

x

ÇOK HEDEFLĠ ĠLETĠM VE ÇOK HEDEFLĠ ĠLETĠM GÜVENLĠĞĠ

ÖZET

Çok hedefli iletim, bilginin, tek bir hedef adresiyle ifade edilen sistemler kümesine

iletilmesidir. Sistemler kümesi, “çok hedefli iletim grubu” olarak isimlendirilmekte

ve sistem adresleri yerine bu grup adresi kullanılmaktadır. Gruba dahil olan

sistemlerin şebeke içerisinde bulundukları yer ile ilgili herhangi bir kısıtlama

bulunmamaktadır. Bilginin sistemlere ulaştırılması, şebeke varlıklarının çok hedefli

iletim yetenekleri sayesinde gerçekleştirilmektedir.

Çok hedefli iletimin ticari bir hizmet olarak verilebilmesi için, öncelikle güvenliğin

sağlanması gerekmektedir. Çok hedefli iletim güvenliği, pek çok alt bileşenden

oluşmaktadır. Çok hedefli iletimin gerçekleştirilebilmesi için, birbirinden bağımsız

pek çok varlığın işbirliği yapması gerekmektedir. Altyapının sağlanması ve içeriğin

paylaşılması sırasında iletime dahil olan varlıkların sayıca fazla olması güvenliğin

sağlanmasını zorlaştırmaktadır. Bu çalışmada, ilk olarak çok hedefli iletim modeli ve

altyapı bileşenleri incelenmiştir. Daha sonra çok hedefli iletim güvenliği ve güvenlik

için kullanılan mimariler, protokoller ve algoritmalar analiz edilmiştir. Yapılan

analizler sonucunda güvenlik çözümleri birbirleriyle karşılaştırılmıştır. Elde edilen

çıkarımlarla bir sonraki adımda neler yapılabileceği araştırılmış ve tavsiyelerde

bulunulmuştur.

Çok hedefli iletim altyapısı, yerel şebeke iletimi, yönlendirme ve adresleme olmak

üzere üç bileşenden oluşmaktadır.

Çok hedefli iletimin yapılabilmesi için, ilk olarak yerel şebeke içerisinde bulunan

sistemlerin trafik almak istedikleri grupları ilk adım yönlendiricilerine bildirmesi

gerekmektedir. Sistemler ile ilk adım yönlendiricileri arasındaki kontrol haberleşmesi

“grup üyelik protokolleri” sayesinde düzenlenmektedir.

Üyelik bilgileri, ilk adım yönlendiricilerinde toplanmakta ve dağıtım ağacı bu bilgiler

yardımıyla oluşturulmaktadır. Çok hedefli iletim yönlendirmesinin temelinde dağıtım

ağaçları bulunmaktadır.

Çok hedefli iletim grup adresleri için D sınıfı adresler kullanılmaktadır. Bu adreslerin

yönetimi ve istemcilere tahsis edilmesi için bir “adres yönetim mimarisi”

oluşturulmuştur. Buna ek olarak pek çok istatistiksel yöntem de uygulanmaktadır.

İlk dönemlerdeki deneysel çalışmalar, ilerleyen dönemlerde yerini ticari

uygulamalara bırakmıştır. Teknolojinin gelişmesine gerektiği gibi yön verilememesi

sebebiyle tek bir standart yapı üzerinde anlaşmaya varılamamış; bu nedenle kısa

xi

vadeli geçiş çözümleri üzerinde yoğunlaşılmıştır. Internet geliştikçe uzun vadede

kullanılacak kalıcı bir çözüm için arayışlar başlamıştır. İlgili çalışmalar halen devam

etmektedir.

Çok hedefli iletim güvenliği, tek hedefli iletim için kullanılan çözümlerle

sağlanamamaktadır. Bunun nedeni tek hedefli iletimde kullanılan çözümlerin, sadece

iki sistem arasındaki haberleşme için geliştirilmiş olmasıdır. İçerik güvenliğinin

sağlanması amacıyla, güvenlik ilişkilerinin grup yapısına uyacak şekilde

genişletilmesi gerekmektedir. Bu amaçla “Grup Güvenlik İlişkileri - GSA”

oluşturulmuştur. Kriptografik anahtarlar bu güvenlik ilişkileri kapsamında

tanımlanmaktadır. Grup anahtar yönetimi mimarilerinin temelinde GSA modeli

bulunmaktadır. Bu mimariler ve algoritmalar için en önemli kıstas, anahtarların

sayısının grup üye sayısıyla nasıl değiştiğidir.

Çok hedefli iletim altyapısı söz konusu olduğunda yerel şebeke ve yönlendirme

altyapısının güvenli hale getirilmesi gerekmektedir. Yerel şebekede bulunan grup

üyelik protokolleri içerisindeki kontrol haberleşmesinin güvenli hale getirilmesinin

yanı sıra, sistemlerin dağıtım ağacına erişimi için izin mekanizmaları

kullanılmaktadır. Yönlendirme altyapısında bulunan protokollerin güvenli hale

getirilmesi için pek çok mekanizma kullanılmaktadır.

Yapılan çalışmada, çok hedefli iletim altyapısı ile ilgili gelişmelere yön verilememesi

ve koordinasyonun sağlanamaması nedeniyle küresel çok hedefli iletim

standartlarının oluşturulamadığı; bunun sonucunda güvenlik çözümlerinin bir bütün

olarak verilmesi yerine parçalı olarak sağlandığı anlaşılmaktadır.

Grup anahtar yönetim mimarileri söz konusu olduğunda, etki alanları içerisinde

kullanım için oluşturulan IKAM mimarisinin en cazip mimari olduğu görülmüştür.

Iolus mimarisinde ölçeklenebilirlik sorununun alt gruplar oluşturularak

çözülmesinin, içerik sağlayıcı varlıkla şebeke sağlayıcı varlığın farklı olması

durumunda bir dezavantaj olduğu görülmüştür.

Çok hedefli iletim uygulamalarının çokluğu, her bir uygulama alanı için farklı

anahtar yönetimi ve tekrar anahtarlama algoritmalarının kullanılmasına sebep

olmuştur. Yapılan incelemeler sonucunda LKH ve OFT algoritmalarının, anahtar

sayısının grup üye sayısıyla logaritmik olarak artması dolayısıyla en uygun anahtar

yönetim algoritmaları olduğu sonucuna varılmıştır.

Kaynak kimlik doğrulaması ve erişim kontrolü alanında en avantajlı algoritmaların

EMSS ve TESLA olduğu görülmüş; ancak her bir algoritmanın farklı özellikleri

olduğu için bazı durumlarda uygulamalara yönelik çözümlerin kullanılması gerektiği

anlaşılmıştır.

Çok hedefli iletim altyapısında bulunan varlıklar arasındaki güvenliğin

sağlanabilmesi amacıyla bu varlıklara yönelik bir anahtar yönetim mimarisi

oluşturulması için iki farklı yol önerilmiştir. İlk yol anahtar yönetim mimarisinin

kaynağın bulunduğu organizasyonel yapı içerisinde olması, ikinci yol ise küresel bir

“güven ve kimlik doğrulama altyapısı” kurulmasıdır.

xii

Çok hedefli iletim ile ilgili güvenlik sorunları küresel anlamda çözümlenmeden

teknolojinin ilerlemesi veya yaygınlaşması beklenmemektedir.

xiii

MULTICAST AND MULTICAST SECURITY

SUMMARY

Multicast is the transmission of information to a set of systems represented by a

single destination address. This set of systems is called a multicast group. The

location and the address of the members of a group has no effect on the transmission.

Information flow is provided by the multicast ability of the entities that lie on the

infrastructure.

Security issues must be addressed first to deploy commercial multicast applications.

Multicast security has many components. To be able to do multicasting, many

entities must cooperate both in the infrastructure and in the information sharing part.

Excess number of entities involved in a single multicast session makes security

issues worse. In this work, multicast model and multicast infrastructure components

are studied first. Second, multicast security protocols, algorithms and architectures

are analyzed. These solutions are then compared to each other to have a better

understanding of the weaknesses and benefits. Finally, steps towards better solutions

are discussed.

Multicast infrastructure is composed of three components namely local area

multicast, routing infrastructure and addressing infrastructure.

Systems in the local area network have to report which multicast groups they wish to

be a member of to the first hop router. This communication is arranged by group

membership protocols.

Membership state is stored in the designated routers and used to build a distribution

tree. Multicast routing infrastructure is heavily dependent on these trees.

D class addresses are used for multicast group addresses. An address allocation and

management architecture has been built to facilitate multicast addressing issues. In

addition to this, derived allocation schemes are being used.

Initially multicasting was used only for experimental applications. Evolution of

multicast gave birth to commercial applications. Commercial demands and misled

technological researches caused multicast providers to seek for short-term interim

solutions. Researches are still being conducted for long-term multicast solutions.

Because unicast security is based on peer-to-peer relations, solutions used in unicast

security can not be used for multicast security. Unicast security association system

must be extended for group communications for content protection. “Group security

xiv

architecture – GSA” is built for this purpose. Cryptographic keys are defined by

these security associations. These keys are used in group key management

architectures. The number of keys must be kept at minimum for scalability concerns.

In the infrastructure level, group membership protocol communication must be

protected. Members must have a controlled access to the distribution tree. Routing

protocol message exchanges must also be protected.

In this work, weak coordination of research interests is said to be the reason for the

lack of missing standards for multicasting. Security researches have a negative effect

because of this lack of standards. Security can not be provided technology-wide.

Only partial security can be applied.

IKAM is thought to be the most convenient architecture for group key management.

Besides this, Iolus architecture is said to have a different approach to scalability

problem which uses subgroups as a single group. But the number of subgroups has a

negative impact on management.

For scalable rekeying algorithms, although application specific solutions exist, LKH

and OFT is found to be the most convenient ones. This is because the number of keys

which should be managed increases logarithmically with the group size.

Among sender authentication and access control algorithms EMSS and TESLA are

found to be the most convenient ones. But in some specific situations application

dependent algorithms may serve better.

To achieve secure protocol exchanges between entities in the multicast infrastructure,

common key management architecture must be implemented. Two different methods

are proposed in this work. The first one is to delegate management control to the

domain that owns the source of multicast. The second one is to implement a global

trust and identity control management infrastructure.

It is observed that without addressing the security problems, multicast is not expected

to develop nor become widespread.

1

1. GĠRĠġ

Çok hedefli iletim, bilginin tek bir adres ile ifade edilen sistemler kümesine

iletilmesidir. Hedef küme içerisinde bulunan sistemlerin, şebeke üzerinde nerede

bulunduğunun bir önemi yoktur; önemli olan, hedef kümenin adresidir. İletim bu

adrese yapıldığı için, kümeye dahil olan sistemlerin adreslerinin herhangi bir önemi

bulunmamaktadır. Çok hedefli iletim sayesinde, şebeke bağlantıları paylaşımlı olarak

kullanılmakta, mesajlar sadece gerektiği zaman kopyalanmakta ve bandgenişliğinden

tasarruf edilmektedir. Çok hedefli iletimin doğası gereği kullanılan bandgenişliği,

hedef kümeye dahil olan sistemlerin sayısı ile doğrusal olarak artmamaktadır.

Sistemler, istedikleri zaman hedef kümeye dahil olabilmekte ve kümeden

ayrılabilmektedir. Hedef küme, çok hedefli iletim grubu olarak isimlendirilmektedir.

Çok hedefli iletim; yerel alan iletimi, yönlendirme ve adresleme bileşenlerinden

oluşmaktadır. Yerel alanda yapılan çok hedefli iletim veri bağlantı katmanında

yapılmaktadır. Çoklu erişim şebekesi içerisinde bulunan sistemler grup üyelik

protokolleri sayesinde [1,2], ilk adım yönlendiricileri ile haberleşerek hangi gruplara

üye olduklarını belirtmektedir. Yerel şebekelerden sorumlu yönlendiriciler, çok

hedefli iletimin şebekeler arasında yapılabilmesi için yönlendirme altyapısını

kullanmakta ve bir dağıtım ağacı oluşturmaktadır [3]. Dağıtım ağacı sayesinde,

kaynaklarla alıcı sistemler arasındaki bağlantı kurulmakta ve bilgi çok hedefli olarak

aynı anda bütün grup üyelerine iletilmektedir. Çok hedefli iletim grupları için D

sınıfı olarak isimlendirilen farklı bir adres sınıfı oluşturulmuştur [1].

Çok hedefli iletim, başlangıçta akademik bir çalışma [3] olarak ortaya atılmış,

ilerleyen dönemlerde ticari uygulamalarda da kullanılabileceği anlaşılmıştır.

Günümüzde çok hedefli iletim, video konferans görüşmeleri, radyo yayınları,

uzaktan eğitim, yazılım dağıtımı, borsa bilgilerinin dağıtımı ve haberlerin

kullanıcılara ulaştırılması gibi pek çok farklı uygulama alanında kullanılmaktadır.

2

Çok hedefli iletimin ticari ve askeri uygulamaları, güvenlikle ilgili sorunların ele

alınmasını beraberinde getirmiştir. Gerek teknoloji altyapısının içerisinde yer alan

varlıkların, gerekse teknolojiden faydalanan sistemlerin çokluğu, güvenlik ile ilgili

zorlukları beraberinde getirmektedir. İletimin yapılabilmesi için dağıtım ağacı

üzerindeki bütün cihazların güvenli olması ve dağıtım ağacına erişimin kontrol

altında tutulması gerekmektedir. Bu tür güvenlik önlemleri “altyapı güvenliği”

içerisinde ele alınmaktadır.

Altyapı güvenliğinin yanı sıra, çok hedefli olarak iletilen bilginin uçtan uca

korunması gerekmektedir. Bilgi, kaynaklardan grup üyelerine iletilmeden önce

şifrelenmekte ve üye sistemlere ulaştığında deşifre edilmektedir. İletimde

kriptografik yöntemlerin kullanılması sayesinde, sadece erişim izni olan sistemler

bilgiye erişebilmektedir. Çok hedefli iletim içeriğinin güvenliği ile ilgili yapılan

çalışmalar sonucunda [4] üç farklı problem alanı belirlenmiştir. İlk alan, veri

dönüşümleri olarak isimlendirilmiş ve bilginin bir uçta şifrelenip diğer uçta deşifre

edilmesi ile ilgili sorunlar bu alan içerisinde ele alınmıştır. İkinci alan, anahtar

yönetimidir ve kriptografik anahtarların tamamı ve bunlara ilişkin durumların

yönetilmesi ile ilgili sorunları içermektedir. Üçüncü problem alanında ise, çok

hedefli iletim politikalarıyla ilgili sorunlar çözülmeye çalışılmıştır.

Ayrıca, çok hedefli iletimde kaynak kimlik doğrulaması ve erişim kontrolünün de

yapılması gerekmektedir. Kimlik doğrulaması için teoride en güvenli yol, sayısal

imzaların kullanımıdır fakat işlemci ve hafıza kaynaklarının yetersizliği dolayısıyla

pratikte bu mümkün olmamaktadır [5]. Yükün azaltılabilmesi için sayısal imzalar

mesajlar üzerine paylaştırılmış ve özet işlevlerinden yararlanılmıştır. Buna ek olarak

mesaj doğrulama kodlarının kullanılması pek çok avantaj sağlamaktadır [6].

İzinli grup üyelerinin, aldığı çok hedefli iletim bilgisini izinsiz bir şekilde üçüncü

taraflara aktarması, bilgi korsanlığı olarak isimlendirilmektedir. Bilgi korsanlığına

karşı, üyelerin sezemeyeceği ve deşifre edildiğinde bilginin hangi üye tarafından

kaçırıldığını gösteren yöntemler üzerinde çalışmalar yapılmıştır.

Bu çalışmada, çok hedefli iletimi oluşturan altyapı bileşenleri ayrıntılı olarak

açıklanmış, çok hedefli iletim ile ilgili güvenlik uzayı tanımlanmış ve güvenlik

sorunlarına karşı geliştirilen yöntemler incelenmiştir. Ayrıca, güvenlik sorunlarına

karşı geliştirilen yöntemler analiz edildikten sonra birbirleriyle karşılaştırılmış ve her

3

yöntemin olumlu ve olumsuz yanları açıklanmıştır. Bunun yanı sıra sorunlara çözüm

bulunamaması durumunda nasıl bir yol izlenmesi gerektiği çoğu zaman literatürde

yer almaktadır. Çalışmada bunların dışında neler yapılabileceği üzerinde durulmuş

ve bazı öneriler getirilmiştir. Buna ek olarak çok hedefli iletimin ve çok hedefli

iletim güvenliğinin gelecekte nerede ve hangi durumda olacağı hakkında öngörüde

bulunulmuştur.

Çalışmanın ikinci bölümünde çok hedefli iletimin yerel şebeke içerisinde nasıl

yapıldığı, üçüncü bölümde, çok hedefli iletim yönlendirmesi ve tasarlanan

yönlendirme protokolleri, dördüncü bölümde ise, D sınıfı adreslerin yönetimi ve

kullanımı incelenmektedir. Beşinci bölümde, çok hedefli iletimin gelişimi ve Internet

üzerinde kullanımı anlatılmaktadır. Altıncı bölüm, çok hedefli iletimde güvenlik

analizini içermektedir. Yedinci bölüm olan sonuç bölümünde, bir önceki bölümde

incelenen ve karşılaştırılan güvenlik bileşenleri ile ilgili sonuçlar ve tartışmaların

yanı sıra, gelecekte çok hedefli iletim ve çok hedefli iletim güvenliği ile ilgili

öngörüler bulunmaktadır.

4

2. YEREL ġEBEKEDE ÇOK HEDEFLĠ ĠLETĠM

2.1. Çok Hedefli Ġletimin Ortaya ÇıkıĢı

Internet Mühendisliği Görev Gücü (Internet Engineering Task Force, IETF)

tarafından yayımlanan ve Internet üzerindeki sistemlerin birbiriyle iletişimini

düzenleyen 791 numaralı Internet Protokolü [7] sayesinde, ilk etapta sadece tek

hedefli iletim tanımlanmıştır. Çok hedefli iletim kavramının doğuşu ve

gelişmesinden sonra bu protokole 1112 numaralı RFC’de [1] açıklanan “IP Çok

Hedefli İletimi İçin Sistem Uzantıları” bilgileri eklenmiştir. Bu sayede, Internet

üzerinde çok hedefli iletimin temelleri atılmıştır. Bu RFC’nin editörlüğünü üstlenen

Steve Deering, bu konuyu ortaya atan ilk kişidir. S. Deering, 1988’de Stanford

üniversitesinde yayımladığı tez çalışmasında çok hedefli iletimin temellerini atmıştır

[3]. İlerleyen dönemlerde konu hakkında araştırma yapma görevi Deering’e

verilmiştir. 1989’da 1112 numaralı RFC, Deering ve arkadaşları tarafından

yayımlanmıştır.

IP çok hedefli iletimi, IP veri bloklarının belirli bir gruba iletilmesidir. Bu sistemler

grubu, sıfır veya daha fazla sayıdaki sistemler kümesinin tek bir hedef IP adresi

olarak temsil edilmesiyle oluşturulmaktadır. Tek hedefli IP veri bloklarında olduğu

gibi, çok hedefli IP veri bloklarının iletimi de en iyi çaba esasına göre yapılmaktadır.

Bir başka deyişle, veri bloğunun, hedef grubun bütün elemanlarına ulaşması garanti

edilmemektedir. Bir gruba üyelik, dinamik olarak gerçekleştirilmektedir. Dolayısıyla

sistemler, istedikleri an bir gruba üye olabilmekte veya gruptan çıkabilmektedir.

Grubun üyelerinin coğrafi dağılımında hiçbir kısıtlama bulunmamaktadır. Tek bir

sistem, birden fazla çok hedefli iletim grubunun üyesi olabilmektedir. Ayrıca kaynak

sistemin, veri bloğu gönderdiği gruba üye olması gibi bir zorunluluk

bulunmamaktadır.

5

Çok hedefli iletim sistem grupları, geçici veya kalıcı tiptedir. Kalıcı gruplarda, kalıcı

olan şey grubun üyeleri değil, grubun adresidir. Grup adresleri, kalıcı gruplarda

yönetimsel olarak atanmakta ve herkes tarafından bilinmektedir. Yönetimsel olarak

atanmayan diğer grup adresleri dinamik gruplar için her an atanmak üzere

tutulmaktadır. Adres ataması, grubun üye sayısı sıfırdan farklı olduğu sürece

gerçekleşmektedir.

IP çok hedefli iletim veri bloklarının şebekeler arası iletimi, “çok hedefli iletim

yönlendiricileri” sayesinde gerçekleştirilmektedir. Bu yönlendiriciler, Internet şebeke

geçitleriyle birlikte veya ayrı olarak konumlandırılabilmektedir. Çok hedefli iletimi

gerçekleştirecek olan sistem, IP çok hedefli iletim veri bloğunu yolladığında; blok,

yerel şebeke çok hedefli iletimi olarak yollanmakta ve hedef grubun bütün yakın

komşu üyelerine gönderilmektedir. Bloğun IP TTL değerinin birden büyük olduğu

durumlarda, o yerel şebekeye bağlı olan çok hedefli iletim yönlendiricileri, bloğu

hedef grupta bulunan sistemlerin şebekelerine yönlendirmeyi gerçekleştirmekle

yükümlüdür. Blok, hedef sistemlerin şebekelerine ulaştığında, o şebekeye bağlı

bulunan diğer bir çok hedefli iletim yönlendiricisi bloğu yerel çok hedefli iletim

halinde hedef sistemlere ulaştırmaktadır. Burada sistem kelimesiyle ifade edilmek

istenen herhangi bir Internet sistemi veya şebeke geçididir fakat çok hedefli iletim

yönlendiricileri değildir. Çok hedefli iletim yönlendiricileri arasındaki mekanizma ve

protokoller sistemler tarafından fark edilememektedir. Ayrıca yerel çok hedefli

iletimin nasıl yapılması gerektiği kullanılan yerel şebeke protokolüne (örneğin

Ethernet) göre değişmektedir.

Çok hedefli iletimle ilgili üç farklı uyumluluk seviyesi mevcuttur. İlk seviye sıfır

seviyesidir ve bu seviyedeki sistemler IP çok hedefli iletimini desteklememektedir.

Bu seviyenin amacı çok hedefli iletimin kullanılmayacağı sistemlerin kapsanması ve

yapılacak değişikliklerden etkilenmemelerinin sağlanmasıdır. Birinci seviye

uyumluluk, çok hedefli iletim veri bloklarının gönderimine izin veren fakat alımını

desteklemeyen sistemlerin içinde bulunduğu seviyedir. Üçüncü ve son seviye ise çok

hedefli iletim bloklarını alabilen ve gönderebilen sistemleri kapsamaktadır. Bu

seviye içerisinde bulunan her sistemin Internet grup yönetim protokolünü (Internet

Group Management Protocol, IGMP) [2] gerçekliyor olması zorunludur.

6

Çok hedefli iletim grupları için iki yeni adres sınıfı oluşturulmuştur. D sınıfı IP

adresleri 1110 bitleriyle başlamaktadır. Bu adres bölgesi, 224.0.0.0 ila

239.255.255.255 arasındadır. Diğer sınıf ise gelecekte kullanım için ayrılmış ve E

sınıfı olarak isimlendirilmiştir. E sınıfı adresler 1111 bitleriyle başlamakta ve

240.0.0.0 ila 255.255.255.254 arasında değişmektedir. 224.0.0.0 adresi herhangi bir

grup adresi olarak kullanılmamaktadır. 224.0.0.1 ise o şebekeye doğrudan bağlı olan

bütün IP çok hedefli iletim sistemlerini içine alan gruptur. Internet üzerindeki bütün

sistemleri içerisine alan bir grup adresi bulunmamaktadır. Bu tür özel çok hedefli

iletim adresleri, IANA “Atanmış Numaralar” dökümanında [8] belirtilmektedir.

Çok hedefli iletim uzantılarını içeren IP modeli, eski IP modeli gibi katmanlarla

gösterilmektedir. Bu modelde ICMP [9] ve IGMP [1], IP katmanı içerisinde

bulunmaktadır. Katmanlı yapı şekil 2.1’de gösterilmektedir.

Üst Katman Protokol Modülleri

IP ModülüICMP IGMP

Yerel

Şebeke

Modülleri

(Örneğin Ethernet)

IP – Yerel Adres Eşlemesi(Örneğin ARP)

IP Hizmet Arabirimi

Yerel Şebeke Hizmet Arabirimi

Şekil 2.1 - Çok hedefli iletim IP modeli

Çok hedefli iletim blokları IP hizmet arabiriminde, tek hedefli iletim bloklarıyla aynı

şekilde gönderilmektedir. Hizmet arabirimi, buna ek olarak üst seviye protokollerin

çok hedefli iletim bloklarını gönderirken değiştirebileceği bir TTL alanı sunmaktadır.

Üst seviye protokoller böyle bir değer belirtmediği zaman, varsayılan değer olarak 1

kullanılmaktadır. İkinci olarak, birden fazla şebekeye bağlı olan sistemler için hizmet

arabirimi yerel arabağdaşımın seçilebilmesine olanak tanımaktadır. IP hizmet

arabirimindeki son değişiklik ise, aynı sistemden gönderilen çok hedefli iletim

bloklarının, şebeke yoluyla değil sistem içerisinde oluşturulan bir geri besleme yolu

ile alınmasıdır. Hedef protokolün seçimi hedef adresine göre değil, bloğun IP

başlığında bulunan protokol alanındaki değere göre yapılmaktadır. Blokların alımına

başlanmadan önce üst seviye protokol, öncelikle hedef gruba üye olunmasını talep

etmiş olmak zorundadır. Bunun için IP hizmet arabiriminde iki yeni işlev

tanımlanmıştır. Bu işlevler aşağıda açıklanmaktadır.

7

SistemGrubunaKatıl ( grup-adresi, arabağdaşım )

SistemGrubundanÇık ( grup-adresi, arabağdaşım )

İlk işlev, hedef gruba üye olunması için; ikinci işlev ise üye olunan bir gruptan

çıkılması için kullanılmaktadır. Tek bir arabağdaşım kullanan sistemlerde

arabağdaşım değişkeninin tanımlanması zorunlu kılınmamıştır. Ayrıca bir sistemin

tek bir gruba değişik arabağdaşımlardan aynı anda üye olmasına izin verilmektedir.

Bu işlevlerin sonucu hemen belli olmaktadır. Bir başka deyişle bu işlevler

bloklanmasız işlevlerdir [1]. IP modülü, çok hedefli iletim bloklarının alımı için her

bir arabağdaşım için ayrı ayrı tutulan grup üyelik listelerini kullanmak üzere

değiştirilmiştir. Bu listeler içerisinde yer alan bir adrese gelen bloklar, sistemin kendi

adresine gelen bloklar gibi işlenmektedir. Listelerde yer almayan adreslere gelen

bloklar, herhangi bir hata mesajı üretilmeden sessizce imha edilmektedir. Buna ek

olarak, D sınıfı bir adrese gönderilen bloklar için ICMP mesajları üretilmesi

yasaklanmıştır. Grup üyelik listeleri, üst seviye protokollerden gelen

“SistemGrubunaKatıl” ve “SistemGrubundanÇık” isteklerine göre

güncellenmektedir. Dolayısıyla, her üyelik için bir sayaç bulundurulması zorunludur.

Burada amaç, birden çok katılım veya çıkış isteğinin doğru şekilde işlenmesinin

sağlanmasıdır.

Yerel şebeke arabiriminde yapılması gereken değişiklikler hizmet arabirimindeki

gibidir. Burada da iki yeni işlev tanımlanmıştır.

YerelGrubaKatıl ( grup-adresi )

YerelGruptanÇık ( grup-adresi )

İşlevlerin argümanlarında bulunan grup-adresi değişkeni çok hedefli iletim grubunun

IP adresini temsil etmektedir. YerelGrubaKatıl işlevi yerel şebeke modülünden, o

adrese iletilen paketleri üst seviyeye aktarmasını talep etmektedir. YerelGruptanÇık

işlevi ise o hedef IP adresine gelen paketleri üst seviyeye aktarımının kesilmesini

talep etmektedir. IP adresleriyle yerel şebeke adresleri arasındaki eşlemenin yerel

şebeke modülü tarafından gerçekleştirilmesi beklenmektedir. Yerel şebeke

modüllerinin, YerelGruptanÇık işlevlerini yerine getirmesi zorunlu değildir. Ayrıca

gönderim için yerel şebeke modülüne aktarılan bloklar tekrar üst seviyeye

8

aktarılmamaktadır. Geri besleme, daha önce bahsedildiği gibi, IP katmanı içerisinde

yapılmaktadır.

2.2. Internet Grup Yönetim Protokolü (IGMP)

Internet grup yönetim protokolü (Internet Group Management Ptotocol, IGMP), ilk

olarak Steve Deering tarafından Aralık 1985’te 966 numaralı “Sistem Grupları:

Internet Protokolüne Çok Hedefli İletim Uzantıları” isimli RFC [10] içerisinde bir ek

olarak tanımlanmıştır. Daha sonra tekrar gözden geçirilerek 988 numaralı [11] ve

1112 numaralı [1] RFC’lerde yayımlanmıştır. 1112 numaralı RFC “IP Çok Hedefli

İletimi İçin Sistem Uzantıları”, IETF’nin 5 numaralı standardı içerisinde yer almıştır.

İlerleyen dönemlerde çok hedefli iletime duyulan ihtiyaç arttıkça ve araştırmalar

yoğunlaştıkça protokolde çeşitli değişikliklere gidilmiş ve iki yeni sürüm

düzenlenmiştir. İkinci sürüm IGMP v2 [12], W. Fener tarafından Kasım 1997’de

2236 numaralı RFC olarak yayımlanmıştır. Üç numaralı ve en güncel sürüm olan

IGMP v3 [13], B. Cain tarafından Kasım 2002’de 3376 numaralı RFC olarak

yayımlanmıştır.

Genel olarak IGMP, çok hedefli iletim yeteneğine sahip sistemlerin, yerel şebekede

bulunan çok hedefli iletim yeteneğine sahip yönlendiricilere grup üyeliklerini

bildirmelerini sağlayan bir protokoldür. İlerleyen bölümlerde IGMP’nin sürümleri

ayrıntılı olarak açıklanmaktadır.

2.2.1. Birinci Sürüm Internet Grup Yönetim Protokolü

IGMP, IP ile haberleşmekte olan sistemlerin, grup üyelikleri hakkındaki bilgileri,

aynı şebeke üzerinde bulunan çok hedefli iletim yönlendiricilerine bildirmesi için

kullanılan bir protokoldür. Bu protokol, IP sistemleri ile çok hedefli iletim

yönlendiricileri arasındaki grup üyelik ilişkilerini düzenlemek üzere oluşturulmuştur

ve yapısı gereği asimetriktir [1].

IGMP, ICMP gibi IP modülü içerisinde yer almaktadır. İkinci seviye

uyumluluğundaki bütün sistemler tarafından gerçeklenmesi zorunludur [1]. IGMP

mesajları, IP veri blokları içerisinde taşınmakta ve protokol numarası olarak 2

9

kullanılmaktadır. IGMP mesajlarına ilişkin başlık yapısı şekil 2.2’de

gösterilmektedir.

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Grup Adresi

Sürüm

0 1 2 3

Tip Sağlama AlanıKullanım Dışı

Şekil 2.2 - IGMPv1 mesajları başlık yapısı (RFC 1112)

Başlık içerisinde bulunan alanların açıklamaları aşağıda verilmektedir;

Sürüm: Bu alanın değeri IGMP’nin sürüm numarasını belirtmekte olduğundan 1’dir.

Tip: Sistem üyelik sorguları için 1, sistem üyelik raporları için 2 kullanılmaktadır.

Grup Adresi: Sorgu mesajlarında bu alanın değeri sıfırdır. Rapor mesajlarında ise

raporun ait olduğu hedef grup IP adresini belirtmektedir.

Çok hedefli iletim yönlendiricileri, periyodik olarak grup üyelik sorgu mesajları

yollamaktadır. Burada amaç, yerel şebeke üzerinde bulunan sistemlerin ilgi

duydukları çok hedefli iletim gruplarına ilişkin listenin güncel tutulmasıdır. Bu tür

sorgu mesajlarında hedef adres olarak özel bir IP adresi olan ve yerel şebekedeki

bütün sistemleri ifade etmek için kullanılan 224.0.0.1 D sınıfı adresi

kullanılmaktadır. Bu adres IANA tarafından atanmıştır [8]. Sorgu mesajlarının IP

TTL değeri her zaman birdir. Sistemler, sorgu mesajlarını duyduklarında rapor

mesajları yollamaktadır. Rapor mesajlarında o sistemin hangi çok hedefli iletim

gruplarına üye olduğunun bilgisi yer almaktadır. Mesaj patlamasını ve raporların

tekrar iletilmesini engellemek için iki mekanizma geliştirilmiştir. Bir sistem, sorgu

mesajı aldığında raporu ivedi bir şekilde göndermek yerine her bir grup üyeliği için

bir gecikme zamanlayıcısı çalıştırmaktadır. Zamanlayıcı 0 saniye ile D saniye

arasında rastlantısal bir değer verilerek başlatılmaktadır. D değişkeninin varsayılan

değeri 10 saniyedir. Raporlar, zamanlayıcı sıfıra ulaştığında gönderilmektedir.

Zamanlayıcıların birbirinden farklı olabilmesi için sistemlerde bulunan rastlantısal

sayı üreteçlerinin sadece o sisteme özgü girdilerle beslenmesi gerekmektedir. Bunun

için sistemlerin IP adresleri kullanılmaktadır. Böylece, zamanlayıcılar arasındaki

korelasyon azaltılmaktadır. Mesaj patlamasını önlemek için kullanılan diğer yol ise

10

gönderilen bütün raporlarda hedef adresi olarak ilgili hedef grup IP adresinin

kullanılmasıdır. Bu sayede o grubun diğer üyeleri raporu duyabilmektedir. Üye

olduğu bir grup hakkında rapor göndermek için, zamanlayıcısının sıfıra ulaşmasını

bekleyen bir sistem, o gruba ilişkin başka bir rapor duyduğunda kendi

zamanlayıcısını durdurarak raporunu iptal etmektedir. Bunun nedeni çok hedefli

iletim yönlendiricilerinin, grup üyelerini teker teker bilmesi değil, aksine ilgili gruba

gönderilen trafiği almak isteyen üyelerin olup olmadığını bilinmesinin yeterli

olmasıdır. Buna ek olarak, rapor gecikme zamanlayıcısı çalışmakta iken bir sorgu

mesajı alındığında, zamanlayıcı durdurulmamakta veya tekrar ayarlanmamaktadır.

224.0.0.1 IP grubu için rapor gecikme zamanlayıcısı çalıştırılmamakta ve grup

üyeliği hiçbir zaman rapor edilmemektedir. Bu grup, IGMP’nin bütün sürümlerinde

bir istisna olarak kabul edilmektedir.

Çok hedefli iletim yönlendiricileri içerisinde tutulmakta olan listede bulunan bir grup

için belirli bir sorgu sayısı sonunda hiçbir rapor alınmamışsa, o grup için yapılan

yönlendirme iptal edilmektedir. IGMP trafiğinin minimum düzeyde tutulması için

sorgular dakikada bir gönderilmekte; ancak, çok hedefli iletim yönlendiricileri

açılırken, üyelik bilgilerinin derhal toplanabilmesi için, daha sık sorgu

gönderilmesine izin verilmektedir. Bir sistem yeni bir gruba dahil olduğunda sorgu

mesajı beklemek yerine, bir an önce o gruba ilişkin bir rapor göndermektedir. İlk

gönderilen raporun yerine ulaştırılamaması ihtimaline karşı rapor birkaç kere

gönderilmekte ve böylece protokol sağlamlığı arttırılmaktadır.

Sistemler için IGMP durumları [1]’de verilmektedir. Buna göre sistemler, her bir çok

hedefli iletim grubu için 3 farklı durumdan birinde bulunmaktadır. Bu durumlar “üye

değil”, “geciken üye” ve “boşta üye” olarak isimlendirilmektedir. “Üye değil”

durumundaki sistemler, ilgili grubun bir üyesi değildir. Gecikme zamanlayıcısı

çalışmakta olan sistemler “Geciken üye” durumundadır. Zamanlayıcısı işlemeyen ve

o gruba üye olan sistemler ise “boşta üye” durumunda olmaktadır. Durum geçişleri

için 5 farklı olay tanımlanmıştır. Bunlar sadece “üye değil” durumunda iken

gerçekleştirilebilen “üye olma”, sadece “geciken üye” ve “boşta üye” durumlarında

gerçekleştirilebilen “gruptan ayrılma”, geçerli bir sorgu duyulduğunda meydana

gelen “sorgu alma”, geçerli bir rapor duyulduğunda gerçekleşen “rapor alma” ve

zamanlayıcı sıfıra ulaştığında gerçekleşen “zaman doldu” olaylarıdır. Bu tür

olayların dışında gerçekleşen olaylar, hata mesajı üretilmeden, bir başka deyişle

11

sessizce görmezden gelinmektedir. Bu olaylara tepki olarak gerçekleştirilebilecek

faaliyetler ise rapor yollanması, zamanlayıcının başlatılması veya zamanlayıcının

durdurulmasıdır. Durum diyagramı şekil 2.3’te verilmektedir. Oklarla

ilişkilendirilmiş olan bilgiler olayları ve parantez içerisindeki bilgiler ise yapılan

işleri göstermektedir.

Zaman doldu

(Rapor gönder)

Rapor alındı

(Zamanlayıcıyı durdur)

Sorgu alındı

(Zamanlayıcıyı başlat)

Gruptan

ayrıl

Gruba katıl

(Rapor gönder,

zamanlayıcıyı başlat)

Gruptan ayrıl

(Zamanlayıcıyı durdur)

Üye

Değil

Geciken

Üye

Boşta

Üye

Şekil 2.3 - IGMPv1 sistemler için durum diyagramı (RFC 1112)

2.2.2 Ġkinci Sürüm Internet Grup Yönetim Protokolü (IGMPv2)

IGMP’nin ikinci sürümü 2236 numaralı RFC [12] içerisinde tanımlanmaktadır. Bu

RFC ile birlikte ilk sürüm güncelliğini yitirmiştir. Bu sürümün geliştirilmesi için

Xerox PARC laboratuarından W. Fener liderliğindeki grup çalışmalarını yürütmüş ve

nihayetinde Kasım 1997’de IGMPv2, 2236 numaralı RFC olarak yayımlanmıştır.

Yeni sürüm, 5 numaralı IETF standardı olan “Internet Protokolü” dokümanı

içerisinde yerini almıştır.

IGMP’nin ikinci sürümündeki en büyük yenilik, grup üyeliğinin sonlandırılmasının,

yönlendirme protokolüne ivedi şekilde raporlanmasını sağlayan üyelikten çıkış

mesajlarıdır. Burada amaç, grup üyeliğinin değişim frekansının yüksek olduğu

grupların daha verimli çalışmasının sağlanmasıdır. Bütün IGMPv2 mesajlarında IP

TTL değeri olarak 1 kullanılmakta, ayrıca mesajlar “IP Yönlendirici Alarmı”

seçeneği [14] ile gönderilmektedir. Mesajların başlık yapısı şekil 2.4’te

gösterilmektedir.

12

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Grup Adresi

0 1 2 3

Tip Sağlama AlanıMaksimum Yanıt Süresi

Şekil 2.4 - IGMPv2 mesajları başlık yapısı (RFC 2236)

Başlık içerisinde bulunan alanların açıklamaları aşağıda verilmektedir.

Tip: 0x11: Üyelik sorgu mesajları için kullanılmaktadır. Genel sorgu ve gruba

yönelik sorgu olmak üzere iki çeşidi bulunmaktadır. 0x16: İkinci sürüm üyelik

raporları için kullanılmaktadır. 0x17: Grup üyeliğinden çıkmak için kullanılmaktadır.

0x12: Bu değer geriye dönük birlikte çalışılabilirlik amacıyla birinci sürüm üyelik

raporları için kullanılmaktadır.

Maksimum Yanıt Süresi: Bu alan sadece üyelik sorgu mesajlarında anlam

kazanmaktadır ve gönderilen sorgulara verilecek yanıtların en geç ne zaman

verilmesi gerektiğinin saniyenin onda biri hassasiyetle belirtilmesi için

kullanılmaktadır. Bu alanın amacı, ayrılma gecikmesinin kontrol edilmesidir. Burada

ayrılma gecikmesi, en son üyenin gruptan ayrılmasıyla yönlendirme protokolünün

haberdar edilmesi arasında geçen süre olarak tanımlanmaktadır.

Grup Adresi: Bu alan gruba yönelik sorgularda, ilgili grup adresini belirtmektedir.

İkinci sürümde, sistemlere ek olarak yönlendiricilerin rolleri de tanımlanmaktadır.

Buna göre çok hedefli iletim yönlendiricileri ya “sorgulayan” rolünde ya da

“sorgulamayan” rolünde olmaktadır. Roller, yönlendiricinin sahip olduğu şebeke

arabağdaşımlarına göre tutulmaktadır. IGMPv2, her bir fiziksel şebeke için tek bir

“sorgulayan” yönlendirici olmasını şart koşmaktadır. Yönlendiriciler, ilk

açıldıklarında, bütün şebeke arabirimleri için “sorgulayan” rolündedir. Normal

operasyonda “sorgulayan” rolündeki bir yönlendirici, kendinden daha düşük IP adres

numarasına sahip olan bir yönlendiriciden sorgu mesajları duyduğunda, otomatik

olarak “sorgulamayan” rolüne geçmektedir. Ayrıca, “Sorgulamayan” rolündeki bir

yönlendirici, “diğer bir sorgulayan mevcut zaman aralığı” süresince herhangi bir

sorgu duymadığı takdirde otomatik olarak “sorgulayan” rolüne dönmektedir. Normal

operasyonda, ilgili arabağdaşım için “sorgulayan” rolündeki yönlendiriciler bağlı

oldukları şebekeye “Sorgu Aralığı” kadar sürede bir sorgu mesajları göndermektedir.

13

Yönlendiriciler, ilk açıldıklarında bütün sistemlerin üye olduğu 224.0.0.1 adresine

grup adres alanı sıfır olan ve maksimum yanıt süresi “Sorgu Yanıt Aralığı” olan

genel sorgu mesajları göndermektedir. Bu mesajlar, birbirlerinden “Başlangıç Sorgu

Aralığı” süresi kadar ayrılmış olarak ve toplam “Başlangıç Sorgu Sayısı” kere

gönderilmektedir. Burada amaç, üyelik bilgilerinin yönlendiriciler ilk açıldığında

eksiksiz olarak öğrenilmesidir.

Bir sistem, gönderilen genel sorguları duyduğunda üye olduğu her bir grup için

(bütün sistemler grubu hariç) çeşitli zamanlayıcılar başlatmaktadır. Zamanlayıcıların

sıfır ila “maksimum yanıt süresi” arasında olması zorunludur. Böyle bir

zamanlayıcının çalıştığı durumlarda ise yeni gelen sorgudaki maksimum yanıt

süresini geçmiyorsa zamanlayıcı devam ettirilmekte, geçiyor ise daha küçük bir

değere tekrar kurulmaktadır. Bu işleyiş gruplara yönelik sorgular için de aynıdır.

Gruba yönelik zamanlayıcı dolduğunda, hedef adresi ilgili grup olan bir rapor

gönderilmektedir. Sistemler, zamanlayıcıları dolmadan o gruba ait başka bir rapor

duyduğunda (birinci veya ikinci sürüm) birden çok raporun gönderilmesini

engellemek için kendi raporlarını iptal etmektedir. Yönlendiriciler, gönderilen raporu

duyduğunda, ilgili grubu, üyesi mevcut olan çok hedefli iletim grupları listesine

eklemekte ve “Grup Üyeliği Aralığı” süresi uzunluğunda bir zamanlayıcı

başlatmaktadır. Tekrarlanan raporlar bu zamanlayıcının tekrar başlatılmasına sebep

olmaktadır. Zamanlayıcı dolmadan gruba ilişkin hiçbir rapor alınmadığı takdirde

hiçbir yerel üyenin kalmadığı varsayılmakta ve dışarıdan gelen trafik akışı

kesilmektedir. Sistemler, herhangi bir çok hedefli iletim grubuna katıldığında, ivedi

bir şekilde ikinci sürüm IGMP raporu göndermek zorundadır. Eğer sistem o grubun

ilk üyesi ise, yönlendirici, bu rapor sayesinde trafiği yerel şebekeye aktarmaya

başlamaktadır. Gönderilen ilk raporun yerine ulaştırılamamasına karşı rapor, birkaç

kere daha yollanmaktadır.

Bir sistem çok hedefli iletim grubundan çıktığında, o grup için sorgulara cevap veren

son üye ise 224.0.0.2 adresli “bütün yönlendiriciler” grubuna üyelikten çıkma mesajı

yollamaktadır. Eğer sistem sorgulara cevap veren son üye değilse, şebeke üzerinde

çok hedefli iletim trafiğini dinlemeye istekli başka sistemler de bulunabileceğinden

üyelikten çıkma mesajı yollanmayabilir. “Sorgulayan” rolündeki bir yönlendirici,

belirli bir grup için üyelikten çıkma mesajı aldığında, “Son Üye Sorgu Aralığı”

süreyle ve “Son Üye Sorgu Sayısı” kere gruba yönelik sorgu mesajı yollamaktadır.

14

Bu mesajlardaki maksimum yanıt süresi, “Son Üye Sorgu Aralığı”’na

ayarlanmaktadır. Yanıt süresince hiçbir üyelik raporu alınmazsa yönlendirici yerel

şebekede hiçbir üyenin kalmadığına karar vermekte ve çok hedefli iletim trafiğini

kesmektedir. Bu işlemler sırasında, “sorgulayan” rolünden “sorgulamayan” rolüne

geçilmesini tetikleyen mesajlar alınsa dahi geçiş yapılmamaktadır.

İlk ve ikinci IGMP sürümlerinin birlikte çalışabilmesi için çeşitli kurallar

tanımlanmıştır. IGMPv1 yönlendiricileri yapıları gereği, maksimum yanıt süresi sıfır

olan genel sorgular göndermektedir. Sıfır değeri, 10 saniye olarak kabul edilmiştir.

Yönlendirici, gönderdiği sorgulara kendi anlayacağı raporlar beklemekte, dolayısıyla

IGMPv2 rapor mesajlarını dikkate almamaktadır. Uygun rapor mesajlarının

gönderilebilmesi için sistemler sahip olduğu bütün şebeke arabağdaşımlarında

sorumlu yönlendiricinin IGMP sürümünü tutan bir değişken saklamaktadır. Bu değer

belirlenirken dikkat edilmesi gereken husus o arabağdaşımda “Birinci Sürüm

Yönlendirici Mevcut” süresi içerisinde birinci sürüm sorgusu duyulup

duyulmamasıdır. Sadece alt sürümü destekleyen yönlendiricilerin bulunduğu bir

şebekede, ikinci sürüm yönlendiriciler mutlaka ilk sürümü kullanmak zorundadır.

Bunun sebebi ilk sürümü kullanan yönlendiricilerin varlığının dinamik olarak

öğrenilememesidir. İlk sürüme göre çalışan ikinci sürüm yönlendiriciler, maksimum

yanıt süresi değeri olarak sıfır kullanmak ve üyelikten ayrılma mesajlarını

görmezden gelmek zorundadır. Aynı şebeke içerisinde hem ilk hem de ikinci sürümü

kullanan sistemler mevcut olduğu zaman, yeni sürümü kullanmakta olan sistemler

üyelik raporlarının birinci sürüm raporları tarafından bastırılmasına engel olmaktadır.

İkinci sürümü kullanmakta olan yönlendiriciler, birinci sürüm üyelik rapor mesajları

aldığında o gruba ilişkin birinci sürümü kullanan sistemlerin mevcut olduğuna dair

bir zamanlayıcı başlatmaktadır. Bu zamanlayıcı “Grup Üyelik Aralığı” ile aynıdır.

Bu zamanlayıcı çalıştığı sürece, üyelikten ayrılma mesajları dikkate alınmamaktadır.

İkinci sürüm IGMP koşan sistemler, ilk sürümde olduğu gibi her gruba göre üç farklı

durumdan birinde bulunmaktadır. Sistemlere ait IGMPv2 durum diyagramı şekil

2.5’te verilmektedir. Sistemler için tanımlanan olaylar ve faaliyetler ilk

sürümdekilerle benzerlik göstermektedir. İlk sürüme ek olarak tanımlanan faaliyetler;

üyelikten çıkış, bayrağın ayarlanması, bayrağın sıfırlanması ve zamanlayıcının tekrar

ayarlanmasıdır. İlk sürüm yönlendiricisi mevcutsa üyelikten çıkış işlemi atlanmalıdır.

Bayrağın ayarlanması, ilgili sistemin şebekede bulunan son grup üyesi olduğu

15

anlamına gelmektedir. Zamanlayıcının tekrar ayarlanması, maksimum yanıt süresi

değiştiği zaman zamanlayıcının tekrar ayarlanması anlamına gelmektedir.

Sorgu alındı

(Maks. Yanıt Zaman. <

çalışan zaman.‟dan büyükse

zamanlayıcıyı tekrar ayarla.)Zaman doldu

(Rapor gönder.

Bayrağı ayarla.)

Rapor alındı

(Zamanlayıcıyı durdur.

Bayrağı sıfırla.)

Sorgu alındı

(Zamanlayıcıyı başlat)

Gruptan ayrıl

(Bayrak ayarlanmışsa

üyelikten çıkma mesajı

gönder.)

Gruba katıl

(Rapor gönder. Bayrağı

ayarla. Zamanlayıcıyı başlat.)

Gruptan ayrıl

(Zamanlayıcıyı durdur.

Bayrak ayarlanmışsa gruptan

çıkma mesajı gönder.)

Üye

Değil

Geciken

Üye

Boşta

Üye

Şekil 2.5 - IGMPv2 sistem için durum diyagramı (RFC 2236)

Gruplara yönelik olarak tutulan durumlara ek olarak bir sistem, sahip olduğu şebeke

arabağdaşımlarına göre iki farklı durumda olabilmektedir. İlk durum, “Birinci Sürüm

Yönlendirici Mevcut” süresi içerisinde herhangi bir ilk sürüm sorgusu duyulmadığı

zaman geçilen “IGMPv1 yönlendiricisi mevcut değil” durumudur.

IGMPv1

sorgusu alındı

(Zamanlayıcıyı

ayarla.)

IGMPv1

sorgusu alındı

(Zamanlayıcıyı

ayarla.)

Zamanlayıcı

doldu

IGMPv1

Yönlendiricisi

Mevcut Değil

IGMPv1

Yönlendiricisi

Mevcut

Şekil 2.6 - IGMPv2 sistemler için arabağdaşım durumları (RFC 2236)

İkinci durum ise “Birinci Sürüm Yönlendirici Mevcut” süresi içerisinde ilk sürüm

sorgusu duyulduğunda geçilen durumdur ve “IGMPv1 yönlendiricisi mevcut” olarak

16

isimlendirilmektedir. Bu durumlar arasında geçişi sağlayan olaylar, IGMPv1 sorgusu

alınması ve zamanlayıcının dolmasıdır. Bu olaylar sayesinde tetiklenen faaliyet ise

zamanlayıcının tekrar başlatılmasıdır. İlişkin durum diyagramı şekil 2.6’da

verilmektedir. Yönlendiriciler için oluşturulmuş IGMPv2 durumları arasındaki

geçişler üç farklı olay sayesinde tetiklenmektedir. Bu olaylar, ”sorgu zamanlayıcısı

doldu”, “daha düşük IP adresli bir yönlendiriciden sorgu mesajı alındı” ve “başka bir

sorgulayan yönlendirici mevcut zamanlayıcısı doldu” olaylarıdır. Bu olaylara karşı

gerçekleştirilen üç farklı işlem bulunmaktadır. Bu işlemler, “genel sorgu

zamanlayıcısının ayarlanması”, “başka bir sorgulayan mevcut zamanlayıcısının

ayarlanması” ve “genel sorgu gönderme” olaylarıdır. Yönlendiricilerin, sahip

oldukları şebeke arabağdaşımlarına göre durum geçiş diyagramı şekil 2.7’de

gösterilmektedir.

Başka sorgulayan mevcut

zamanlayıcısı doldu.

(Genel sorgu mesajı gönder. Genel

sorgu zamanlayıcısını ayarla.)

Daha düşük IP adresli bir

yönlendiriciden sorgu mesajı alındı.

(Başka sorgulayan mevcut

zamanlayıcısını ayarla)

Genel sorgu

zamanlayıcısı doldu.

(Genel sorgu gönder.

Genel sorgu

zamanlayıcısını

ayarla)

(Genel sorgu gönder.

Başlangıç genel sorgu

zamanlayıcısını ayarla)

Sorgulayan

Yönlendirici

Sorgulamayan

Yönlendirici

Başlangıç

Durumu

Daha düşük IP adresli bir

yönlendiriciden sorgu

mesajı alındı.

(Başka sorgulayan mevcut

zamanlayıcısını ayarla)

Şekil 2.7 - IGMPv2 yönlendirici durum diyagramı (RFC 2236)

Şekil 2.7’de gösterilmekte olduğu gibi yönlendiriciler, ilk olarak başlangıç

durumunda açılmakta ve vakit kaybetmeden sorgulayan durumuna geçmektedir.

Şebeke arabağdaşımlarına göre olan durum geçiş diyagramına ek olarak çok hedefli

iletim hedef gruplarına göre bir durum geçiş diyagramı da oluşturulabilmektedir. Bu

17

diyagramda yönlendiriciler grup başına dört farklı durumdan birinde bulunmaktadır.

Başlangıç durumu olan ve yerel şebekede hiçbir üyenin bulunmadığı durum, “Üye

mevcut değil” olarak isimlendirilmektedir. O gruba ait en az bir üyenin bulunduğu

durum “Üye mevcut” ve şebekede ilk sürüm sistemlerinin mevcut olduğu durum ise

“İlk sürüm üyeler mevcut” durumudur. Yönlendiricinin üyelik raporu duymadan

üyelikten ayrılma mesajı duyduğu durum ise, “Üyelik kontrol ediliyor” olarak

isimlendirilmektedir. Bu durumlar arasındaki geçişler 6 farklı olay sayesinde

olmaktadır. Bu olaylar aşağıda açıklanmaktadır.

1. “v2 raporu alındı”: Yönlendiricinin ikinci sürüm üyelik raporu alması

olayıdır.

2. “v1 raporu alındı”: Yönlendiricinin birinci sürüm üyelik raporu alması

olayıdır.

3. “Üyelikten ayrılma mesajı alındı”: Yönlendiricinin herhangi bir sistemden

üyelikten ayrılma mesajı alması olayıdır.

4. “Zamanlayıcı doldu”: Grup üyelik zamanlayıcısının dolması durumudur.

5. “Tekrar iletim zamanlayıcısı doldu”: Gruba yönelik bir sorgu mesajının tekrar

iletilmesi için geçmesi gereken sürenin dolması olayıdır.

6. “v1 sistem zamanlayıcısı doldu”: Bu olay şebeke içerisinde birinci sürüm

sistemlerin var olup olmadığına yönelik zamanlayıcının dolması olayıdır.

Bu olaylara yönelik yapılabilecek işlemler aşağıda sıralanmaktadır.

1. Zamanlayıcı başlat: O gruba ait zamanlayıcının başlatılması ya da bu

zamanlayıcı aktif durumda ise “Grup Üyelik Aralığı” başlangıç değerine

sıfırlanması işlemidir.

2. Zamanlayıcıyı başlat*: Birinci işlemin bir alternatifi olan bu işlem,

zamanlayıcının, yönlendirici sorgulayan rolünde ise “En Son Üye Sorgu

Aralığı” x “En Son Üye Sorgu Sayısı” değerine, yönlendirici sorgulamayan

rolünde ise “Maksimum Yanıt Süresi” x “En Son Üye Sorgu Sayısı” değerine

ayarlanması anlamına gelmektedir.

3. Tekrar iletim zamanlayıcısını çalıştır: Tekrar iletim zamanlayıcısının

çalıştırılması olayıdır.

18

4. v1 sistem zamanlayıcısını çalıştır: Bu işlem İlk Sürüm Sistem Mevcut

zamanlayıcısını çalıştırmakla birlikte Grup Üyelik Aralığı zamanlayıcısı

çalışıyor ise bu zamanlayıcıyı ilk değerine döndürmektedir.

5. “Gruba yönelik sorgu gönder”: Bu işlemde mesaj sorgulanan gruba

gönderilmektedir ve başlıktaki maksimum yanıt süresi alanında En Son Üye

Sorgu Aralığı değeri bulunmaktadır.

6. Yönlendirmeyi uyar +: Yönlendirme protokolünün, şebeke dahilinde grup

üyeleri olduğuna dair uyarılması işlemidir.

7. Yönlendirme uyar –: Yönlendirme protokolünün, bağlı bulunan şebeke

dahilinde grup üyelerinin bundan böyle mevcut olmadığına dair uyarılması

işlemidir.

Sorgulayan rolündeki bir yönlendiricinin durum geçiş diyagramı şekil 2.8’de

verilmektedir.

Hiçbir Üye

Mevcut

Değil

Üyeler

Mevcut

Üyelik

Kontrol

Ediliyor

v1 Üyeler

Mevcut

v2 Raporu alındı.

(Yönlendirmeyi uyar +.

Zamanlayıcıyı başlat.)

Zamanlayıcı doldu.

(Yönlendirmeyi uyar -.)

Zamanlayıcı doldu.

(Yönlendirmeyi uyar -.

Tekrar iletim zam. sıfırla.)

Tekrar iletim zam. doldu.

(Gruba yönelik sorgu gönder.

Tekrar iletim zam. başlat.)

v2 Raporu alındı.

(Zamanlayıcıyı başlat.)

Ayrılma mesajı alındı.

(Zamanlayıcıyı başlat*.

Tekrar iletim zam. başlat.

Gruba yönelik sorgu gönder.)

v2 Raporu alındı.

(Zamanlayıcıyı başlat.)

v1 Raporu alındı.

(Zamanlayıcıyı başlat.

v1 sistem zam. başlat.)

v1 sistem

zamanlayıcısı

doldu.

v2 Raporu alındı.

(Zamanlayıcıyı başlat.)v1 Raporu alındı.

(Zamanlayıcıyı başlat.

v1 sistem zam. başlat.)

v1 Raporu alındı.

(Zamanlayıcıyı başlat.

v1 sistem zam. başlat.)Zamanlayıcı doldu.

(Yönlendirmeyi uyar -.)

v1 raporu alındı.

(Yönlendirmeyi uyar -.

Zamanlayıcıyı başlat.

v1 sistem zam. başlat.)

Şekil 2.8 - IGMP v2 sorgulayan yönlendirici durum diyagramı (RFC 2236)

Yönlendiriciler, sorgulayan rolünün yanı sıra sorgulamayan rolünde de

olabilmektedir. Bu roldeki yönlendiricilerin durum diyagramı benzerdir fakat

yönlendiriciler IGMP mesajları göndermemektedir ve durumlar arası geçiş sadece

alınan mesajlar sayesinde olmaktadır.

19

Protokol içerisinde kullanılmakta olan çoğu zamanlayıcı, sistem yöneticileri

tarafından değiştirilebilmektedir. Varsayılan değerler dışında değerler kullanılmak

istendiğinde, bütün zamanlayıcıların bir bütünlük sağlaması gerekmektedir.

Zamanlayıcıların listesi ve açıklamaları aşağıda sıralanmaktadır.

1. Sağlamlık Değişkeni: Bu değer şebeke içerisinde beklenen paket kaybı

olasılığına karşı bağışıklık kazanılması için kullanılmaktadır. Şebekede

kayıplar fazla ise bu değer arttırılmaktadır. IGMP protokolü;

“Sağlamlık Değişkeni – 1” paket kaybına dayanıklı olacak şekilde

tasarlanmıştır. Protokol spesifikasyonunda bu değerin sıfır olarak

ayarlanması yasaklanmıştır. Var sayılan değer 1’dir.

2. Sorgu Aralığı: Bu aralık sorgulayan yönlendiricinin ardışık iki genel

sorgu mesajı göndermesi arasında geçen süreyi belirtmektedir.

Varsayılan değeri 125 saniyedir. Bu değer değiştirilerek şebeke

içerisindeki IGMP mesajlarının sayısı ayarlanmaktadır.

3. Sorgu Yanıt Aralığı: Bu değer genel sorgular için kullanılmakta olan

maksimum yanıt süresini temsil etmektedir. Varsayılan değeri 100; bir

başka deyişle 10 saniyedir. Bu değer değiştirilerek sorgu yanıtlarının

öbeklenme değeri ayarlanmaktadır. Bu değerin, “Sorgu Aralığı”

değerinden daha düşük olması zorunludur.

4. Grup Üyeliği Aralığı: Bu değer çok hedefli iletim yönlendiricisinin

şebeke üzerinde grup üyelerinin olmadığına karar vermesi için geçmesi

gereken süreyi belirtmektedir. Değeri “Sağlamlık Değişkeni” x “Sorgu

Aralığı” + “Sorgu Yanıt Aralığı”’dır.

5. Başka Bir Sorgulayan (Yönlendirici) Mevcut Aralığı: Bu değer

sorgulamayan rolündeki bir yönlendiricinin sorgulayan rolüne geçmesi

için beklemesi gereken süredir. Varsayılan değer, “Sağlamlık

Değişkeni” x “Sorgu Aralığı” + ½“Sorgu Yanıt Aralığı”’dır.

6. Başlangıç Sorgu Aralığı: Sorgulayan rolündeki bir yönlendirici

açılmakta iken yollanan genel sorgu mesajları için belirlenen aralığı

ifade etmektedir. Değeri “Sorgu Aralığı”’nın dörtte biridir.

7. Başlangıç Sorgu Sayısı: Başlangıç durumunda olan sorgulayan

yönlendirici tarafından yollanan sorguların sayısıdır. Varsayılan değeri

“Sağlamlık Değişkeni”’dir.

20

8. Son Üye Sorgu Aralığı: Üyelikten çıkma mesajlarına cevap olarak

gönderilen, gruba yönelik sorgu mesajlarına yerleştirilen maksimum

yanıt süresidir. Ayrıca gruba yönelik sorgu mesajlarının gönderimi

arasında geçen süreyi temsil etmektedir. Varsayılan değeri 10, bir başka

deyişle 1 saniyedir. Bu aralık, şebekenin üzerinde üyelikten ayrılma

gecikmesinin ayarlanması için kullanılmaktadır.

9. Son Üye Sorgu Sayısı: Yönlendiricinin belirli bir gruba ait hiçbir üyenin

kalmadığına karar vermesi için göndermesi gereken gruba yönelik sorgu

mesajlarının sayısıdır. Varsayılan değeri “Sağlamlık Değişkeni”’dir.

10. Talep Dışı Rapor Aralığı: Bu değer şebeke içerisindeki sistemlerin

ardışık iki üyelik raporu göndermesi arasında geçen süreyi

göstermektedir. Varsayılan değeri 10 saniyedir.

11. v1 Yönlendirici Mevcut Zamanaşımı: İlk sürüm sorgu mesajı alan ikinci

sürün sistemin, ikinci sürüm mesajları göndermeye başlamadan önce ne

kadar beklemesi gerektiğini gösteren süredir. Varsayılan değeri 400

saniyedir.

Birinci sürümün eksiklerinin ortadan kaldırılması için oluşturulan yeni sürümde, pek

çok değişiklik ve ekleme mevcuttur. Protokol yeteneklerinin genişletilebilmesi için

ilk sürümdeki mesajların başlığında bulunan “sürüm” ve “tip” alanları birleştirilerek

tek bir alan haline getirilmiştir. Yönlendiricilerin ilk sürüm ile ikinci sürüm rapor

mesajlarını ayırt edebilmesi için ikinci sürüm üyelik raporlarına yeni bir “tip” değeri

atanmıştır. Grup trafiğinin daha hızlı kesilmesine yönelik olarak, sistemlerin gruptan

ayrılmalarını belirtebilmeleri için yeni bir IGMP mesaj türü kullanılmaya

başlanmıştır. Üyelik sorgu mesajları değiştirilerek başlık yapısında daha önceden

kullanılmamakta olan bir bölüm, sorgulara yanıt olarak kullanılan rapor mesajlarının

ne kadar hızlı gönderilmesi gerektiğini düzenleyen “maksimum yanıt süresi” olarak

kullanılmaya başlanmıştır. İlk sürümde yönlendiriciler arasında sorgulayanın

seçilmesi sistem yöneticilerine düşmektedir. Yeni sürüm ile birlikte bu işlem

standartlaştırılmıştır. Bu sayede ikinci sürüm yönlendiriciler arasında sorgulayanın

seçimi otomatik hale getirilmiştir. Fakat her iki sürümün de birlikte bulunduğu

şebekelerde sistem yöneticilerine halen iş düşmektedir. Ayrıca yeni sürümle birlikte

her IGMP mesajı RFC 2113’te [14] açıklanmakta olan “yönlendirici alarm seçeneği”

ile gönderilmektedir.

21

2.2.3. Üçüncü Sürüm Internet Grup Yönetim Protokolü (IGMPv3)

IGMP protokolünün ilk ve ikinci sürümleri Internet üzerinde geniş kullanım alanı

bulmuştur. Teknolojiler ilerledikçe ve insanların çok hedefli iletime duyduğu ihtiyaç

arttıkça, ikinci sürüme çeşitli eklemeler yapılması gündeme gelmiştir. 1997’de 2236

numaralı RFC’de [12] tanımlanan ikinci sürümün daha ileriye götürülmesi için B.

Cain ve grubu, üçüncü nesil IGMP protokolü için çalışmalara başlamıştır.

Araştırmaya katılanlar, Cisco Systems’tan S. Deering ve I. Kouvelas, AT&T

Araştırma Laboratuar’ından B. Fener ve Ericsson’dan A. Thyagarajan’dır. Araştırma,

IETF’nin şebeke çalışma grubu içerisinde yürütülmüş ve 2002’de 3376 numaralı

RFC [13] olarak yayımlanmıştır. Üçüncü sürüm ile birlikte önceki sürümler

güncelliğini yitirmiştir.

Daha önceki sürümlere ek olarak, sistemlere “kaynak filtrelemesi” yapma olanağı

tanınmaktadır. Kaynak filtrelemesi, sistemlerin sadece seçtiği kaynaktan trafik alma

veya bütün kaynaklardan alıp sadece seçtiği kaynaklardan almama olarak

tanımlanmaktadır. IP sistemleri içerisinde, üst seviye protokollerin kullanması

amacıyla bir IGMP hizmet arabirimi oluşturulmuştur. Üst seviyedeki protokollerin

kullanabilmesi için aşağıdaki işlev tanımlanmıştır [13].

IPÇokHedefliİletimDinle(yuva, arabağdaşım, grup adresi, filtre durumu, kaynak listesi)

İşlev argümanında bulunan yuva; üst seviyede isteğin kim tarafından yapıldığını

belirten ve cevapların kime döndürüleceğini gösteren bir parametredir. Arabağdaşım;

sistemde bulunan şebeke arabağdaşımlarından hangisinin kullanılması gerektiğini

gösteren değişkendir. Herhangi bir arabağdaşım belirtilmediği takdirde varsayılanın

kullanılması gerekmektedir. Grup adresi; isteğin ilişkilendirilmek istendiği çok

hedefli iletim grup adresidir. Filtre durumu; sadece istenen kaynakların belirtildiği

“ekle” durumu veya sadece istenmeyen kaynakların belirtildiği “çıkar” durumu

olmak üzere iki farklı değer almaktadır. Kaynak listesi ise eklenmesi veya

çıkarılması gereken sıfır veya daha fazla IP çok hedefli iletim grup adresini içeren

sırasız bir listedir. Belirli bir yuva, şebeke arabağdaşımı ve çok hedefli iletim grup

adresi üçlüsü için aynı anda sadece tek bir filtre durumu ve kaynak listesi aktif

olmaktadır. Filtre durumu ve liste, yukarıda tanımlanmakta olan işlev kullanılarak

değiştirilebilmektedir. Yapılan her istek, kendisinden önceki durumu geçersiz

22

kılmaktadır. Önceki IGMP sürümlerinde tanımlanmış olan üye olma ve üyelikten

çıkma operasyonları, üçüncü sürümdeki işlevle, sırasıyla şu şekilde ifade

edilmektedir.

IPÇokHedefliİletimDinle(yuva, arabağdaşım, çok hedefli iletim adresi, çıkar, {})

IPÇokHedefliİletimDinle(yuva, arabağdaşım, çok hedefli iletim adresi, ekle, {})

Burada kullanılmakta olan {} kaynak listesi, sıfır adresten oluşan boş bir listeyi ifade

etmektedir. Sistemler içerisinde, IPÇokHedefliİletimDinle işlevinin kullanıldığı

bütün yuvalara ilişkin bir çok hedefli iletim kabul durumu kaydı tutulmaktadır. Bu

kayıtlar şebeke arabadaşımını, çok hedefli iletim grup adresini, filtre durumunu ve

kaynak listesini içermektedir. Çağrıdaki filtre durumu “ekle” ve kaynak listesi boş

bir liste ise, ilgili kayıt listeden silinmektedir. Böyle bir kaydın mevcut olmadığı

durumlarda çağrı dikkate alınmamaktadır. Filtre durumu “çıkar” ve kaynak listesi

dolu ise, güncel kayda göre listede değişiklik yapılmaktadır. Kaydın mevcut

olmadığı durumlarda, çağrının parametrelerine göre uygun ekleme yapılmakta ve

listedeki kaynaklardan trafiğin alınmaması sağlanmaktadır.

Sistemler içerisinde yuvaya göre kabul durumunun yanı sıra, şebeke arabağdaşımına

göre tutulan diğer bir kabul durumu daha mevcuttur. Bu kabul durumunda, tıpkı

yuvalar için tutulan durumda olduğu gibi çok hedefli iletim grup adresi, filtre durumu

ve kaynak listesi tutulmaktadır. Verilen bir çok hedefli iletim grubu için, sadece tek

bir kabul durumu ve kaynak listesi geçerli olduğundan, şebeke arabağdaşımlarına

göre olan durum, yuva durumlarının birleşimi alınarak oluşturulmaktadır. Farklı

yuvaların aynı grup adresi için farklı kaynak listeleri ve faklı filtre durumları olduğu

zaman, bütün yuva kayıtlarının birleşimi alınmakta fakat üst katmandaki yuvalara

sadece ilgili trafik aktarılmaktadır. Daha önceki sürümlerde olduğu gibi IGMPv3

mesajları, IPv4 veri blokları içerisine gömülmektedir. Protokol numarası olarak 2 ve

IP TTL değeri olarak 1 kullanılmaktadır. Ayrıca bütün mesajlar IP yönlendirici

alarmı seçeneğini [14] taşımakta ve mesajlarda IP şebeke kontrolü önceliği bilgisi

(Hizmet Tipi: 0xc0) [7] bulunmaktadır.

Yeni sürümde ikisi yeni olmak üzere, toplam beş adet mesaj tipi bulunmaktadır. Bu

mesajlar tablo 2.1’de verilmektedir. Tabloda bulunmayan hatalı mesaj tipleri sessizce

imha edilmektedir.

23

Tablo 2.1 - IGMP v3 mesaj tipleri

Mesaj Tipi Mesaj Ġsmi

0x11 Üyelik Sorgusu

0x22 v3 Üyelik Raporu

0x12 v1 Üyelik Raporu

0x16 v2 Üyelik Raporu

0x17 v2 Üyelikten Çıkma Mesajı

Üçüncü sürümdeki üyelik sorgu mesajlarına ilişkin başlık yapısı şekil 2.9’da

verilmektedir.

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Grup Adresi

0 1 2 3

Tip = 0x11 Sağlama AlanıMaksimum Yanıt Kodu

Ayrılmış S QRV QQIC Kaynakların Sayısı (N)

Kaynak Adresi (1)

Kaynak Adresi (2)

……..

Kaynak Adresi (N)

Şekil 2.9 - IGMPv3 üyelik sorgu mesajları başlık yapısı (RFC 3376)

Başlıkta bulunan alanlardan maksimum yanıt kodu, o mesaja ilişkin yanıtların

yollanması için belirlenen maksimum süreyi ifade etmektedir. İzin verilen sürenin

(maksimum yanıt süresi) birimi 1/10 saniyedir. Maksimum yanıt kodundaki değer

128’den küçük olduğu zaman, maksimum yanıt süresi doğrudan bu alandaki değer

olarak alınmaktadır. Bu değer 128 ise veya 128’den büyükse maksimum yanıt süresi

şekil 2.10’da tanımlanmaktadır.

70 2 61 3 4 5

1 exp mant

Maksimum Yanıt Süresi = ( mant | 0x10 ) << ( exp + 3 )

Şekil 2.10 – IGMPv3 maksimum yanıt kodu

24

Maksimum yanıt süresinin düşük değere sahip olması, sistemlerin ayrılma gecikme

sürelerinin ayarlanabilmesine; yüksek değere sahip olması IGMP trafiğinin

öbeklenme seviyesinin ayarlanabilmesine olanak sağlamaktadır. Grup adresi alanı

genel sorgularda sıfır olarak alınmakta, gruba yönelik sorgularda ise hangi grup

sorgulanmakta ise o grubun adresi kullanılmaktadır. Ayrılmış olarak gösterilmekte

olan alan, iletimde sıfır olarak gönderilmekte ve mesaj alındığında görmezden

gelinmektedir. S bayrağı ayarlandığı takdirde, mesajı alan diğer çok hedefli iletim

yönlendiricilerinin sorgularla ilgili zamanlayıcılarını güncellememeleri

gerekmektedir. Fakat bu bayrak, sistem tarafındaki zamanlayıcıların işleyişini veya

sorgulayan yönlendirici seçim mekanizmalarını etkilemektedir. Sorgulayan

Sağlamlık Değişkeni (Querier Robustness Variable, QRV) alanı, sorguyu gönderen

yönlendiricinin sağlamlık değişkenini barındırmaktadır. Bu alanda bulunan değer

yediyi geçtiğinde, QRV değeri olarak sıfır alınmaktadır. 0 ile 7 arasındaki değerlerde

bu sorguyu duyan yönlendiriciler kendi sağlamlık değerlerini bu değere ayarlamakla

yükümlüdür. Sorgulayan Yönlendiricinin Sorgu Aralığı Kodu (Queriers Query

Interval Code, QQIC) alanı, sorgulayan rolündeki yönlendiricinin “Sorgu Aralığı”

zamanlayıcısını temsil etmektedir. Gerçek aralık olan QQI’nin birimi saniyedir ve

QQIC alanından şekil 2.11’de gösterilmekte olduğu gibi bulunmaktadır.

70 2 61 3 4 5

1 exp mant

QQIC < 128 ise QQIC = QQI

QQIC = 128 veya QQIC > 128 ise QQI = ( mant | 0x10 ) << ( exp + 3 )

Şekil 2.11 – IGMPv3 QQIC alanı

Sorgulayan rolünde olmayan yönlendiriciler kendi değerlerini, duydukları en son

sorgu mesajındaki değere eşitlemektedir. Başlıktaki kaynak sayısı alanı kaynakların

sayısını belirtmektedir. Genel ve gruba yönelik sorgularda kaynaklarla ilgili bilgiler

sorgulanmadığı için bu alan sıfır değerini almakta; gruba ve kaynağa yönelik

sorgularda ise, ilişkin kaynak sayısını belirtmektedir. Bu sürümde üç çeşit sorgu

mesajı tanımlanmıştır. Bu mesajlar, yönlendiricilerin o şebeke arabağdaşımıyla ilgili

çok hedefli iletim kabul durumunun tamamının öğrenilmesi için gönderilen genel

25

sorgular, tek bir grubun çok hedefli iletim kabul durumunun öğrenilmesi için

gönderilen gruba yönelik sorgular ve belirli bir grup ve kaynak listesi çiftine göre

yollanan sorgulardır. Genel sorgularda hedef adresi 224.0.0.1 olarak seçilmiştir.

Diğer sorgu tiplerinde hedef adresi ilgili grup adresi olarak ayarlanmaktadır.

Spesifikasyon gereği bir sistem, hedef adresi ne olursa olsun bütün sorgu mesajlarını

kabul etmek ve işlemek durumundadır.

Üçüncü sürümde bulunan rapor mesajının başlık yapısı şekil 2.12’de verilmektedir.

Bu raporlar, sistemler tarafından çok hedefli iletim durumlarını belirtmek amacıyla

çok hedefli olarak gönderilmektedir. Grup kayıtları, raporu gönderen sistemin çok

hedefli iletim grupları ve kaynaklarla olan ilişkisini gösteren bloklardır. Yardımcı

bilgi uzunluğu alanı, grup kayıtlarının sonunda bulunan yardımcı bilgi alanının

uzunluğunu göstermektedir. IGMPv3 protokolünde, herhangi bir yardımcı bilgi

tanımı bulunmamaktadır. Bu alanlar gelecekte tanımlanmak üzere şuan için kullanım

dışı bırakılmıştır.

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Ayrılmış

0 1 2 3

Tip = 0x22 Sağlama AlanıAyrılmış

Grup Kaydı (1)

Grup Kaydı (2)

……..

Grup Kaydı (M)

Grup Kayıtlarının Sayısı (M)

Şekil 2.12 - IGMPv3 üyelik rapor mesajı başlık yapısı (RFC 3376)

Şekil 2.12’de gösterilmekte olan başlık bilgisinde bulunan grup kayıtlarının nasıl

olması gerektiği şekil 2.13’te verilmektedir. Rapor mesajları içerisinde yer alan grup

kayıt blokları toplam altı farklı tiptedir.

Alınan bir sorguya karşılık olarak gönderilen “güncel durum kaydı” tek bir adrese

ilişkin çok hedefli iletim kabul durumunu raporlamak için kullanılmaktadır.

1. DURUM_EKLE (Kayıt Tipi: 1): Şebeke arabağdaşımının, o grup adresi

için filtre durumunun “ekle” olduğunu göstermektedir. Kaynak adres alanı

26

(eğer boş değil ise) ilgilenilen kaynakları belirtmektedir. (Bundan böyle

IS_IN ( s ) olarak anılacaktır.)

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Çok Hedefli İletim Grup Adresi

0 1 2 3

Kayıt Tipi Kaynak Sayısı (N)Yard. Bilgi Uzunluğu

Kaynak Adresi (1)

Kaynak Adresi (2)

Kaynak Adresi (N)

……..

Yardımcı Bilgi

Şekil 2.13 - IGMPv3 üyelik rapor mesajlarında bulunan grup kayıtları yapısı

2. DURUM_CIKAR (Kayıt Tipi: 2): İlgilenilen grup adresi için, o şebeke

arabağdaşımının filtre durumunun “çıkar” olduğunu göstermektedir.

Kaynak adres alanları ise ilgilenilmeyen kaynakları belirtmektedir.

(Bundan böyle IS_EX ( s ) olarak anılacaktır.)

“Filtre durumu değişiklik kaydı”, üst seviyede bulunan uygulama veya

protokollerden, belirli bir grup adresi için kullanımda olan filtre durumunun

değiştirilmesi isteği alındığı zaman kullanılmaktadır. İki farklı çeşidi vardır ve bunlar

aşağıda açıklanmaktadır.

3. EKLE_DURUMUNA_GEÇİŞ (Kayıt Tipi: 3): Belirtilen grup adresi için

filtre durumunun “ekle” durumuna geçirildiğini belirten kayıttır. Kayıtta

bulunan kaynak adresleri ilgilenilen yeni adresleri göstermektedir.

(Bundan böyle TO_IS ( s ) olarak anılacaktır.)

4. ÇIKAR_DURUMUNA_GEÇİŞ (Kayıt Tipi: 4): Bir önceki kaydın aksine

filtre durumunun “ekle”’den “çıkar”’a geçirildiğini belirten kayıttır.

(Bundan böyle TO_EX ( s ) olarak anılacaktır.)

Sistemlerde, ilgilenilen kaynaklar değiştiği zaman “Kaynak listesi değişimi kaydı”

oluşturulmaktadır. Bu tür kayıtlarda filtre değişimine izin verilmemekte, sadece

kaynakların değişmesine izin verilmektedir. Kayıt tipleri aşağıda belirtilmektedir.

27

5. YENİ_KAYNAKLARA_İZİN_VER (Kayıt Tipi: 5): Sistemin ilgilendiği

yeni kaynakların eklenmesi için oluşturulan kayıttır. Filtre durumu “ekle”

ise yeni kaynaklar eklenmekte, filtre durumu “çıkar” ise listede bulunan

kaynaklar ilgilenilmeyen kaynaklar listesinden çıkarılmaktadır. (Bundan

böyle ALLOW ( s ) olarak anılacaktır.)

6. ESKİ_KAYNAKLARI_DURDUR (Kayıt Tipi: 6): Sistemin, bundan

böyle belirtilen kaynak listesinden trafik almak istemediğini belirten kayıt

bloğudur. Filtre durumu “ekle” ise kayıttaki adresler listeden silinmekte,

“çıkar” ise kayıttaki adresler listeye eklenmektedir. (Bundan böyle

BLOCK ( s ) olarak anılacaktır.)

Geçerli olan kaynak listesine aynı anda hem eklemeler hem de çıkarmalar olması söz

konusu olduğunda bu istekler iki farklı kayıt olarak hazırlanmaktadır. Bu kayıt tipleri

arasında yer almayan tanımsız kayıt blokları sessizce imha edilmektedir.

Gönderilen IGMP rapor mesajlarının kaynak adres alanında o sistemin IP adresi;

hedef alanında ise 224.0.0.22 IP numaralı çok hedefli iletim grubu bulunmaktadır.

Bu grup adresi, IGMP’nin üçüncü sürümünü destekleyen bütün yönlendiricileri

temsil eden çok hedefli iletim grubudur. İlk veya ikinci sürüm uyumluluk durumunda

çalışmakta olan sistemlerin, raporlarını sorguda belirtilen gruba göndermesi

gerekmektedir.

IGMPv3 protokolü diğer sürümler gibi asimetrik olduğu için sistemler üzerinde

farklı, yönlendiriciler üzerinde farklı çalışmaktadır. Protokolün sistemlerle ilgili

tarafı ele alındığında diğer IGMP sürümleriyle uyumluluğun sağlanabilmesi

amacıyla sistemlerde, bütün şebeke arabağdaşımlarında çok hedefli iletim

yönlendirici sürümüne ilişkin bir değişken tutulmaktadır. IGMPv3 protokolü

operasyonlarını tetikleyen iki farklı olay mevcuttur. Bu olaylar, üst seviye

protokollerin veya uygulamaların isteği üzerine şebeke arabağdaşımının kabul

durumunun değişmesi veya bir sorgu mesajı alınmasıdır. Şebeke arabağdaşımındaki

durum değişikliği sistemin durum değişikliği raporu göndermesine sebep olmaktadır.

Bu raporun içeriği, arabağdaşımın bir önceki durumuna ve yapılmak istenen

değişikliğe göre değişmektedir. Durum değişiklikleri tablo 2.2’de gösterilmektedir.

Bu tabloda yer almayan “var olmayan” durumu ise filtre durumu “ekle” iken boş bir

28

kaynak listesi verilmesi olarak tanımlanmaktadır. Hesaplanan kaynak kümesi,

ALLOW veya BLOCK kayıtları için boş küme ise bu kayıt rapordan silinmektedir.

Rapor, yönlendiriciler tarafından alınamaması durumuna karşı “Sağlamlık Değeri -

1” kere tekrarlanmaktadır. Tekrar mesajlarının gönderimi sırasında meydana

gelebilecek durum değişiklikleri sonucunda, bu mesajlarının gönderiminden

vazgeçilmekte, mesajlar imha edilmekte ve ivedi şekilde yeni oluşturulan rapor

gönderilmektedir.

Tablo 2.2 - Sistemler için durum değişikliği raporları

Bir Önceki Durum Yeni Durum Durum DeğiĢikliği Kaydı

EKLE ( A ) EKLE ( B ) ALLOW ( B-A ), BLOCK ( A-B )

ÇIKAR ( A ) ÇIKAR ( B ) ALLOW ( A-B ), BLOCK ( B-A )

EKLE ( A ) ÇIKAR ( B ) TO_EX ( B )

ÇIKAR ( A ) EKLE ( B ) TO_IN ( B )

Yeni oluşturulacak rapor için, şebeke arabağdaşımı durumu eskisiyle

karşılaştırılmaktadır. Oluşturulan yeni kayıtlar için yeni bir rapor oluşturulmamakta,

bunun yerine kayıtlar, bekleyen rapor ile birleştirilmektedir. Eğer yeni durum için

filtre durumunun değişmesi gerekiyorsa, rapora filtre değişim kaydı eklenmektedir.

Filtre durumu değişimi içeren bir raporda, filtre durumu “ekle” ise bir TO_IN kaydı

eklenmekte, durum “çıkar” ise TO_EX kaydı eklenmektedir. Kayıtta kaynak listesi

değişimi olması gerektiğinde ALLOW veya BLOCK kaydı eklenmektedir. Kayıtların

oluşturulması tablo 2.3’e göre yapılmaktadır.

Tablo 2.3 - Kayıtların oluşturulmasını düzenleyen tablo

Kayıt Eklenen Kaynaklar

TO_IN Güncel arabaşdaşım durumunda iletilmesi gereken bütün kaynaklar

TO_EX Güncel arabağdaşım durumunda iletilmemesi gereken bütün kaynaklar

ALLOW Bir önceki duruma ek olarak iletilmesi gereken kaynaklar

BLOCK Bir önceki duruma ek olarak iletilmemesi gereken kaynaklar

Sistemler, sorgu mesajları duyduğunda anında cevap vermemekte; cevap, alınan

sorgu mesajındaki maksimum yanıt kodundan üretilen maksimum yanıt süresi ile

sıfır saniye aralığında rastlantısal bir süre kadar beklendikten sonra iletilmektedir.

29

Buna ek olarak sistemler, cevap yollarken halihazırda bekletmekte olduğu cevapları

da göz önüne almaktadır. Bunun için her şebeke arabağdaşımı başına iki zamanlayıcı

ve bir liste tutulması gerekmektedir. Bu zamanlayıcılar, genel sorgularda kullanılan

bir zamanlayıcı ve gruba veya hem gruba hem de kaynaklara yönelik sorgularda

kullanılan bir zamanlayıcıdır. Liste ise grup başına ilgili kaynakların listesidir. Yeni

bir sorgu alındığında, gönderilmesi gereken rapor aşağıdaki kurallar çerçevesinde

hazırlanmaktadır. Bu kurallar sırasıyla denetlenmekte ve uygun bulunan ilk kural

uygulanmaktadır.

1. Önceden alınmış olan genel bir sorgu için bekleyen bir cevap mevcut ise,

yeni gelen sorguda belirtilen maksimum yanıt süresi zamanlayıcının o

anki değeriyle karşılaştırılmaktadır. Zamanlayıcının değeri maksimum

yanıt süresinden küçük ise herhangi bir değişiklik yapılmamaktadır.

2. Alınan sorgu genel sorgu ise, cevap, şebeke arabağdaşımı zamanlayıcısı

kullanılarak programlanmaktadır. Sorgudaki maksimum yanıt süresinden

daha uzun süre beklemeye ayarlanmış cevaplar iptal edilmektedir.

3. Alınan sorgu, gruba veya hem gruba hem de kaynağa yönelik bir sorgu ise

ve bekleyen hiçbir rapor yoksa, cevabın programlanması için grup

zamanlayıcısı kullanılmaktadır. Bu tür sorgularda, sorgudaki kaynaklar

cevabın oluşturulmasında göz önüne alınmaktadır.

4. O gruba ve kaynak listesine ilişkin daha önceden bekleyen bir cevap

bulunmaktayken gruba yönelik bir sorgu alınması durumunda, gruba

yönelik kaynak listesi silinmekte ve tek bir cevap programlanmaktadır.

5. Alınan sorgu, gruba ve kaynağa yönelik bir sorgu ise ve boş olmayan bir

kaynak listesine sahip olan bir cevap beklemekte ise, mesajdaki yeni

kaynakları da içerecek tek bir cevap oluşturulmaktadır.

Beklemekte olan bir cevap için zamanlayıcı dolduğunda, duruma göre bir veya

birkaç rapor gönderilmektedir. Gönderim işlemleri aşağıdaki kurallara göre

yapılmaktadır.

1. Dolan zamanlayıcı, genel sorguya verilmesi gereken yanıtın zamanlayıcısı

ise her bir grup adresi için tek bir güncel durum kaydı gönderilmektedir.

Bu kayıtlarda çok hedefli iletim grup adresi, filtre durumu ve kaynak

30

listesi bulunmaktadır. Birden çok güncel durum kaydı için, birbirinden

bağımsız raporlar gönderilmektedir.

2. Dolan zamanlayıcı gruba yönelik bir zamanlayıcı ise ve o gruba yönelik

kaydedilen kaynaklar kümesi boş küme ise, o adres için tek bir güncel

durum kaydı gönderilmektedir.

3. Dolan zamanlayıcı grup zamanlayıcısı ise ve o grup için kaydedilen

kaynak listesi boş değilse cevaben gönderilen güncel durum kaydı ve

bekleyen kayıt tablo 2.4’teki gibi oluşturulmaktadır.

Tablo 2.4 - Sistemlerde güncel durum kaydının hesaplanması

Arabirim Durumu Bekleyen Kayıttaki Kaynaklar Güncel Durum Kaydı

EKLE ( A ) B IS_IN ( A*B )

ÇIKAR ( A ) B IS_EX ( A*B )

Hesaplanan güncel durum kaydındaki kaynak listesinin boş olduğu durumlarda,

hiçbir yanıt gönderilmemektedir. Ayrıca gerekli raporlar oluşturulduktan sonra

raporlanan gruplara ilişkin kaynak listeleri sıfırlanmaktadır.

Şebeke içerisinde bulunan sistemlerin çok hedefli iletim durumlarının öğrenilmesi

için periyodik olarak genel sorgu mesajları gönderilmekte, sadece belirli bir grup için

çok hedefli iletim durumunun güncellenmesi gerektiğinde ise o gruba yönelik sorgu

mesajları gönderilmektedir. Buna ek olarak, bu tip mesajlar bir sistemin grup

üyeliğinin bittiğini gösteren durum değişim kaydı alındığında da gönderilmektedir.

Grup ve kaynağa yönelik sorgular, şebeke üzerinde belirtilen kaynaklardan bilgi

almak isteyen sistemlerin olup olmadığının kontrol edilmesi için kullanılmaktadır.

Bu tür mesajlar, güncel durum kayıtlarına cevap olarak gönderilmemektedir.

Çok hedefli iletim yönlendiricilerinde durumlar, grup ve şebeke arabağdaşımı başına

tutulmaktadır. Grup durumunda; filtre durumu, kaynak listesi ve çeşitli

zamanlayıcılar bulunmaktadır. Yönlendiricinin doğrudan bağlı olduğu her şebeke

için bir kabul durumu tutulmaktadır. Bu durum içerisinde çok hedefli iletim grup

adresi, grup zamanlayıcıları, filtre durumu ve kaynak kayıtları bilgileri

bulunmaktadır. Kaynak kayıtlarında ise kaynak adresi ve kaynak zamanlayıcısı

bilgileri bulunmaktadır. Her şebeke arabağdaşımı ve grup başına bir filtre durumu

bilgisi tutulmaktadır. Bu sayede, o grupla ilgili toplam kabul durumu

31

belirlenmektedir. Filtre durumu, bir grup kaydı alındığında güncellenmektedir.

Yönlendirici filtre durumu “çıkar” iken iki tip kaynak listesi tutulmaktadır. İlk liste,

istenen çok hedefli iletim kabul durumunda oluşan uyuşmazlıkları belirtmektedir.

İkinci liste ise istenmeyen kaynakların listesidir. Filtre durumu “ekle” iken

tutulmakta olan listede istenen kaynakların adresleri bulunmaktadır.

Gruba yönelik zamanlayıcı, o grubun filtre durumu “çıkar” iken “ekle”’ye geçeceği

zamanı göstermektedir. Bu zamanlayıcı, her şebeke arabağdaşımı ve grup başına

tutulmakta ve alınan grup kayıtlarına göre güncellenmektedir. “çıkar” durumunda

iken sıfıra ulaşan bir grup zamanlayıcısı, o gruba ait filtre durumu “çıkar” olan hiçbir

sistemin bulunmadığını göstermektedir. Dolayısıyla yönlendirici filtresi “çıkar”’dan

“ekle”’ye dönmektedir.

Tablo 2.5 - Yönlendiricilerdeki grup zamanlayıcılarının rolü

Grup Filtre Durumu Grup Zamanlayıcı Değeri Faaliyetler / Açıklamalar

Ekle Zamanlayıcı >0, =0 Bütün üyeler ekle durumundadır.

Çıkar Zamanlayıcı > 0 En az bir üye çıkar durumundadır.

Çıkar Zamanlayıcı = 0 Grubu dinlemek isteyen üye

kalmamıştır. Bütün kaynak

zamanlayıcıları dolduysa grup

kaydı silinmekte aksi takdirde ekle

durumundaki sistemler göz önüne

alınarak ekle durumuna

geçilmektedir.

Tablo 2.5’te grup zamanlayıcısının rolü daha ayrıntılı olarak açıklanmaktadır.

Yönlendiricilerde, grup zamanlayıcılarına ek olarak kaynak zamanlayıcıları da

tutulmaktadır. Bu zamanlayıcılar, alınan grup kaydında bulunan tip ve filtre

durumlarına göre güncellenmektedir. Grubun filtre durumu “ekle” iken zamanlayıcısı

dolan bir kaynak, yönlendiricilerin çok hedefli iletim trafik listesinden silinmektedir.

Filtre durumu “çıkar” iken dolan bir kaynak zamanlayıcısı, yönlendiricinin

yönlendirme protokolüne o kaynaktan bilgi almak istemeyen hiçbir alıcının

kalmadığı bilgisinin iletmesine sebep olmaktadır. Filtre durumu “çıkar”’da olan

gruplardaki kaynaklar, sadece grup zamanlayıcısı dolduktan sonra listeden

silinmektedir.

32

IGMP tarafından bir kaynaktan bir gruba trafik iletilmesi için yönlendirme

protokolüne yapılan bildirimler tablo 2.6’da verilmektedir.

Tablo 2.6 - Yönlendirme protokolüne gönderilmekte olan bildirimler

Grup Filtre

Durumu

Kaynak Zamanlayıcısı Yapılan ĠĢ

Ekle Zamanlayıcı > 0 Kaynaktan gelen trafiğin iletilmesi

bildirilmektedir.

Ekle Zamanlayıcı = 0 Kaynak kaydının silinmesi ve trafik iletiminin

durdurulması bildirilmektedir. Ayrıca o gruba

ait başka kaynak kayıtları yoksa grup kaydının

silinmesini bildirilmektedir.

Ekle Kaynak bilgisi yok. Trafiğin iletilmemesini bildirilmektedir.

Çıkar Zamanlayıcı > 0 Kaynaktan gelen trafiğin iletilmesi

bildirilmektedir.

Çıkar Zamanlayıcı = 0 Kaynaktan gelen trafiğin iletilmemesi fakat

kaynak kaydının silinmemesi bildirilmektedir.

Çıkar Kaynak bilgisi yok Trafiğin iletilmesini bildirmektedir.

Çok hedefli iletim yönlendiricileri, güncel durum kayıtları aldığında hem grup hem

de kaynak zamanlayıcılarını güncellemektedir. Tablo 2.7’de güncel durum

kayıtlarının yönlendiricilerde nasıl işlendiği açıklanmaktadır.

Tablo 2.7 - Güncel durum raporu alındığında yönlendiricilerde yapılan işler

Y. Durumu Alınan Rapor Yeni Yönl. Durumu Yapılan ĠĢ

Ekle ( A ) IS_IN ( B ) Ekle ( A+B ) ( B ) = GMI

Ekle ( A ) IS_EX ( B ) Çıkar ( A * B, B - A ) ( B - A ) = 0,

Grup Zamanlayıcısı = GMI,

( A - B ) kaynaklarını sil.

Çıkar ( K, L ) IS_IN ( A ) Çıkar ( K + A, Y - A ) ( A ) = GMI

Çıkar ( K, L ) IS_EX ( A ) Çıkar ( A - L, L * A ) ( A - K - L ) = GMI,

( K – A ) kaynaklarını sil,

( Y – A ) kaynaklarını sil,

Grup Zamanlayıcısı = GMI

33

Tabloda bulunan kaynak kümelerinden A, zamanlayıcıları çalışmakta olan, B ise

zamanlayıcıları sıfıra ulaşmış kaynakları göstermektedir. Dolayısıyla yönlendirme

protokolüne, A kümesinden gelen trafiğin iletilmesi, B kümesinden gelen trafiğin

iletilmemesi bildirilmektedir. Yapılan işler sütununda bulunan kısaltmalardan GMI

(Group Membership Interval) grup üyelik aralığını, LMQT (Last Member Query

Count) ise en son üye sorgu sayısını göstermektedir. LMQT, ayrılma gecikme

süresini ifade etmektedir. Yapılan iş bölümündeki eşitlemeler ise kaynak

kümelerinde bulunan kaynakların zamanlayıcılarındaki değişiklikleri ifade

etmektedir. Sistemler, güncel durum raporlarına ek olarak filtre durumu ve kaynak

listesi değişimi kayıtları da göndermektedir. Bu tür kayıtlar alındığında

yönlendiricilerde gelişen olaylar tablo 2.8’de verilmektedir.

Tablo 2.8 - Filtre durumu değişimi ve kaynak listesi değişimi kayıtları alındığında yönlendiricilerde yapılan işler

Yönlendirici

Durumu

Alınan Rapor

Yeni Yönl. Durumu Yapılan ĠĢ

Ekle ( A ) ALLOW ( B ) Ekle ( A + B ) ( B ) = GMI

Ekle ( A ) BLOCK ( B ) Ekle ( A ) Q ( G, A * B ) sorgusu gönder

Ekle ( A ) TO_EX ( B ) Çıkar ( A * B, B - A) ( B - A ) = 0,

( A - B ) kaynaklarını sil,

Q ( G, A * B ) sorgusu gönder,

Grup Zamanl. = GMI.

Ekle ( A) TO_IN ( B ) Ekle ( A + B ) ( B ) = GMI,

Q ( G, A - B) sorgusu gönder.

Çıkar ( K, L ) ALLOW ( B ) Çıkar ( K + A, Y - A ) ( A ) = GMI

Çıkar ( K, L ) BLOCK ( B ) Çıkar ( K + ( A - L ), L ) ( A - K - L ) = grup zamanlayı.

Q ( G, A - L ) sorgusunu gönder.

Çıkar ( K, L ) TO_EX ( A ) Çıkar ( A - L, L * A) ( A - K - L ) = grup zamanla.,

( K - A ) kaynaklarını sil,

( L - A ) kaynaklarını sil,

Q ( G, A - Y ) sorgusu gönder,

Grup Zamanla. = GMI.

34

Tablo 2.8’de bulunan yapılan işler sütununda kullanılan sorgu gösteriminde,

argümanda bulunan ilk sembol hedef grup adresini, ikinci sembol ise sorgulanan

kaynak listesini ifade etmektedir. Gruplarda kullanılan zamanlayıcılar yönlendiricide

o grup için kullanılmakta olan filtre durumundaki geçişler için kullanılmaktadır.

Filtre “çıkar” durumda iken dolan grup zamanlayıcısı, yönlendiricinin o grup için

ekle durumuna geçmesini sağlamaktadır.

Üçüncü sürüm IGMP protokolünü kullanmakta olan yönlendiriciler arasında

sorgulayan rolünü üstlenecek olanın seçimi, ikinci sürümde olduğu gibi IP

adreslerine göre yapılmaktadır. Yüksek IP numarasına sahip olan yönlendiriciler

sorgulayan rolünü üstlenmektedir. Gruba yönelik sorgular gönderilmesi gerektiğinde,

sorgulanacak grubun zamanlayıcısı LMQT değerine düşürülmekte, sorgu ivedi bir

şekilde gönderilmekte ve tekrar gönderim için gerekli programlamalar yapılmaktadır.

Grup ve kaynaklara yönelik bir sorgu gönderilmesi gerektiğinde, zamanlayıcısı

LMQT değerinden büyük her bir kaynak için zamanlayıcı LMQT değerine

azaltılmakta ve tekrar gönderim sayısı en son üye sorgu sayısına ayarlanmaktadır.

Üçüncü sürüm IGMP protokolünde, ikinci sürümde olduğu gibi geriye dönük

uyumluluk mevcuttur. Sorgu mesajları incelendiğinde ilk sürüm sorgu mesajları 8

sekizliden oluşmakta ve başlıktaki maksimum yanıt kodu alanı sıfıra eşit olmaktadır.

İkinci sürüm mesajları da 8 sekizliden oluşmakta fakat maksimum yanıt kodu alanı

sıfırdan farklı olmaktadır. Üçüncü sürümde mesajlar, en az 12 sekizliden

oluşmaktadır. Sistemler, geriye dönük uyumluluk için şebeke arabağdaşımı başına

IGMP sürümünü belirten bir değişken tutmakta ve değişkenin değerine göre IGMPv3

durumunda veya uyumluluk durumunda çalışmaktadır. Buna benzer bir mekanizma

eski sürüm sistemler için yönlendiriciler içerisinde de uygulanmaktadır. Protokolün

üçüncü sürümünde kullanılmakta olan zamanlayıcı ve sayaçların büyük bölümü bir

önceki sürümden alınmıştır. Bunlara ek olarak sadece üçüncü sürümde bulunan

zamanlayıcılar, LMQT (Last Member Query Time), “önceki sürüm sorgulayan

mevcut zaman aşımı” ve önceki sürüm sistem mevcut aralığıdır. LMQT, en son üye

sorgu zamanını göstermekte ve değeri en son üye sorgu arılığı ile en son üye sorgu

sayısının çarpılmasıyla bulunmaktadır. Önceki sürüm sorgulayan mevcut zaman

aşımının değeri sağlamlık değişkeni ile son sorguda alınan sorgu aralığı çarpımına

sorgu yanıt aralığının eklenmesiyle; önceki sürüm sistem mevcut aralığı ise

35

sağlamlık değişkeni ile sorgu aralığının çarpımına sorgu yanıt aralığının

eklenmesiyle bulunmaktadır.

IGMPv3 protokolü “Sağlamlık değişkeni – 1” paket kayıplarına karşı dayanıklıdır

fakat bu değerin arttırılması o şebekenin ayrılma gecikme zamanının da artmasına

sebep olmaktadır. Sorgu aralığının arttırılması ise toplam IGMP trafiğinin düşük

olması anlamına gelmektedir. Ayrıca maksimum yanıt süresi IGMP trafiğinin

öbeklenme değeri ile ters orantılıdır.

2.3. Çok Hedefli Mesajların Ethernet Üzerinden Ġletimi

Ethernet, Xerox tarafından geliştirilmiş bir yerel alan şebeke teknolojisidir. Xerox ve

DEC firmalarının ortaklaşa çalışması sonucunda 1976 yılında oluşturulmuştur.

Ethernet spesifikasyonu IEEE 802.3 standardının temelini oluşturmuştur. Ethernet

teknolojisinde erişim metodu olarak CSMA / CD kullanılmaktadır. İlk sürümlerde

iletim hızı olarak 10 mbit/sn kullanılmakta iken, günümüzde bu hız 100 mbit/sn ve 1

gbit/sn’ye kadar çıkarılmıştır. Ethernet teknolojisini kullanan sistemler, fiziksel bir

şebeke arabağdaşım kartına (Network Interface Card, NIC) sahiptir. Bu kart

üzerinde, fiziksel olarak saklanan bir ortam erişim adresi (Media Access Controller

Address, MAC Address) bulunmaktadır. Sistemler, NIC üzerinde saklanan MAC

adresine gönderilen mesajları veya yayın mesajlarını alabilmektedir. Çok hedefli

iletim söz konusu olduğunda şebeke içerisinde bulunan belirli bir sistem grubunun

ilgili trafiği alması gerekmektedir. Bunun Ethernet teknolojisinde sağlanabilmesi

için, D sınıfı çok hedefli iletim adreslerinin MAC adresleriyle eşlenmesi

gerekmektedir. Bu amaçla, IEEE LAN spesifikasyonunda gerekli değişiklikler

yapılmış ve bu sayede bir NIC, kendi adresine, yayın adresine ve belirli bir menzil

içerisinde bulunan çok hedefli iletim adreslerine gönderilen trafiği alabilir hale

getirilmiştir. Ethernet MAC adresleri toplam 6 sekizliden, bir başka deyişle 48 bitten

oluşmaktadır. Bu adresin yapısı şekil 2.14’te gösterilmektedir. MAC adresi

yapısındaki ilk sekizlinin ilk biti Ethernet çerçevesinin yayın veya çok hedefli iletim

çerçevesi olduğunu belirtmektedir. 01:00:5E ile başlayan MAC adresleri IANA

organizasyonunun elindedir. IANA, bu adres menzili içerisinde düşen adreslerden

yarısını çok hedefli iletim için ayırmıştır [8]. Böylece 01:00:5E:00:00:00 ila

01:00:5E:7F:FF:FF arasında olan MAC adresleri çok hedefli iletim için ayrılmıştır.

36

7 0 7 0 7 0 7 0 7 0 7 0

XXXXXX11 XXXXXXXXXXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX

Yayın veya çok hedefli iletim biti

Yerel olarak yönetilen adres biti

Şekil 2.14 – Ethernet MAC adresi yapısı

Çok hedefli iletim grup adreslerinin IP numarası bu MAC adres menziline

eşlenmektedir. İlgili yapı şekilde 2.15’te gösterilmektedir. Şekilde gösterilmekte olan

örnekte 239.255.0.1 çok hedefli iletim grup adresi ile 01:00:5E:7F:00:01 Ethernet

MAC adresi birbirine eşlenmektedir. Çok hedefli iletim adreslerinde ilk 4 bit sabittir

(1110). Adresler, geriye kalan 28 bitin değiştirilmesiyle farklılaşmaktadır.

MAC adresi

48 bit

23 bit25 bit

01 00 5E 7F 00 01

32 bit

00000001 0101111000000000 01111111 00000000 00000001

239

11101111

255

11111111

0

00000000

1

000000001

28 bit

Kaybolan

5 bit

IP Çok hedefli iletim adresi

Şekil 2.15 – IP Çok hedefli iletim adresleri ile Ethernet MAC adreslerinin eşlenmesi

IANA atanmış numaralar dökümanına [8] göre, ayrılan MAC adreslerinin ilk 25 biti

sabittir. Dolayısıyla eşleme, geriye kalan 23 bit ile yapılmaktadır. IP çok hedefli

iletim adreslerindeki 28 bitin, MAC adreslerindeki 23 bite birebir eşlenmesi

olanaksızdır. Çözüm olarak, birden fazla çok hedefli iletim adresinin tek bir MAC

adresine eşlenmesi kararlaştırılmıştır. Eşleme sırasında kaybolan 5 bit sonucunda 32

adet faklı çok hedefli iletim adresi tek bir MAC adresine eşlenmektedir. Buna örnek

olarak 224.1.1.1 ve 225.1.1.1 adresleri verilebilir. Aynı MAC adresine eşlenen çok

hedefli iletim adreslerine örnek olarak şekil 2.16 verilmiştir.

37

224.1.1.1

224.129.1.1

225.1.1.1

225.129.1.1

238.1.1.1

238.129.1.1

239.1.1.1

239.129.1.1

01:00:5E:01:01:01

Şekil 2.16 – Tek bir MAC adresine eşlenen çok hedefli iletim adresleri

Çok hedefli iletim adreslerinin Ethernet gibi çoklu erişim şebeke adreslerine

eşlenmesinden yola çıkılarak diğer çoklu erişim şebekeleri için adres eşlemeleri

yapılabilmektedir.

38

3. ÇOK HEDEFLĠ ĠLETĠMDE YÖNLENDĠRME

3.1 Çok Hedefli Ġletim Yönlendirmesine GiriĢ

Uygulamaların daha sağlam ve verimli olması amacıyla yerel alan şebekeleri

içerisinde çok hedefli iletim tekniklerinden yararlanılmaktadır. Şebeke teknolojileri

gelişip iletim kapasiteleri arttıkça; bu tür uygulamaların birden fazla şebeke

içerisinde kullanımı gündeme gelmiştir. Bunun gerçekleştirilebilmesi için,

çalışmalara başlanmıştır. Bu çalışmaların başlangıç noktası tek hedefli iletim

protokolleridir. İkinci katmanın üzerindeki tek hedefli iletim yönlendirme

protokolleri, uzaklık vektörü ve bağlantı durumu olmak üzere iki farklı sınıfa

ayrılmaktadır. Yapılan çalışmalar sonucunda, tek hedefli iletim protokollerine

uzantılar yapılarak çok hedefli iletim yönlendirme protokolleri geliştirilmiştir.

Çok hedefli iletimin şebekeler üzerinde kullanılabilmesi için, yerel alan

şebekelerinde (LAN) kullanılmakta olan çok hedefli iletimde var olan üç önemli

özelliğinin korunması gerekmektedir. Bu özelliklerden ilki grup adresleridir. LAN

ortamında, çok hedefli iletim paketleri hedef sistemler kümesini temsil eden tek bir

grup adresine gönderilmektedir. Bu kümeye üye olanlar için herhangi bir coğrafi

kısıtlama bulunmamaktadır. Ayrıca, üyeler arasında herhangi bir eşitleme veya

anlaşma mekanizmasının kullanımı zorunlu değildir. Diğer bir özellik ise iletimin

başarıya ulaşma olasılığının yüksek olmasıdır. Genel olarak, LAN ortamında tek

hedefli iletim paketlerinin hedefe ulaşma olasılığıyla çok hedefli iletim paketlerinin

hedefe ulaşma olasılığı eşit olmaktadır. Korunması gereken son özellik ise düşük

gecikmedir. LAN ortamında kaydedilen gecikmeler ve bir gruba katılmak için

yapılan isteklerin sonuca ulaşma süresi olarak tanımlanan katılım gecikmesi çok

düşük olmakla birlikte; geniş alan şebekelerinde kaydedilen gecikmeler pek çok

uygulama için kabul edilemeyecek düzeydedir.

39

Çok hedefli iletimde trafiğin gruba üye olan bütün alıcılara ulaştırılabilmesi için

yönlendirme ağaçlarından faydalanılmaktadır. İletim yolunun, optimum olacak

şekilde tek bir ağaç veya ağaçlar grubu olarak oluşturulması probleminin, pek çok

çözümü bulunmaktadır. Çok hedefli iletim ağaçları, kaynaklar arasında paylaşımlı

veya tek bir kaynağa yönelik olarak oluşturulabilmektedir. Yerel alan şebekeleri

içerisinde kullanılmakta olan çok hedefli iletim uygulamaları küçük ölçeklidir ve

şebekenin sunduğu kaynak zenginliği sayesinde çok verimli sonuçlar elde

edilmektedir. Bu tür uygulamalar geniş alan şebekelerinde kullanılmak istendiğinde

yönlendirme algoritmasının temelini oluşturacak olan ağaç yapısının seçimi çok

hedefli iletim hizmetinin kalitesini doğrudan etkilemektedir [15]. Bu ağaçların

karşılaştırılması için düşük gecikme, düşük maliyet ve düşük trafik yoğunlaşması

özelliklerinin bilinmesi gerekmektedir. Çok hedefli iletim ağacında düşük gecikme,

kaynaktan alıcıya kadar olan sistemden sisteme gecikmenin aynı iki sistem arasında

oluşan tek hedefli iletim yol gecikmesiyle karşılaştırılması sonucu göreceli olarak

hesaplanmaktadır. Düşük maliyet söz konusu olduğunda toplam bandgenişliği

maliyeti ve ağaç durum maliyeti göz önüne alınmaktadır. Bir çok hedefli iletim

grubu, kaynaklardan bilgi almaya başladığında farklı kaynaklardan akan trafik,

genellikle, aynı bağlantılar üzerinden geçmekte fakat en kısa yol ağaçları

kullanıldığında paylaşılan bağlantıların sayısı azalmaktadır. Düşük trafik

yoğunlaşması hesaplanırken aynı bağlantı üzerinden geçen farklı trafiklerin toplamı

araştırılmaktadır. Minimum maliyet ve minimum gecikme tek bir ağaç tipi

kullanıldığında aynı anda sağlanamamaktadır [15]. Ağaç türleri arasında, maliyeti

yüksek tutarak minimum gecikme sağlayan tür, kökü kaynakta bulunan “En Kısa Yol

Ağaçlar’ı - (Shortest Path Tree, SPT)”; gecikmeyi yüksek tutarak minimum maliyet

sağlayan tür ise Steiner Minimal Ağaçları’dır (Steiner Minimal Tree, SMT). Diğer

ağaç türleri, bu iki uç nokta arasında bulunan türlerdir. En kısa yol ağaçlarının kökü,

kaynakta bulunmakta ve ağaç kaynaktan bütün hedeflere en kısa yolları içeren

dallardan oluşmaktadır. SPT’de amaç, genel dağıtım maliyetinin mimimize edilmesi

değildir. Kaynak köklü ağaçların hesaplanması göreceli olarak kolaydır ve bu

hesaplama işlemi dağıtık olarak gerçekleştirilebilmektedir [15]. Bu tür ağaçlar genel

olarak tek hedefli yönlendirme tablolarından oluşturulabilmektedir. Şebekenin

çizgesi (graph) içerisinde tanımlanan düğümlerin bir altkümesi içerisinden

oluşturulan en düşük maliyetli alt çizge (başka bir deyişle ağaç) Steiner minimal

ağacını oluşturmaktadır [16]. SMT ağaçlarında, aynı gruba trafik gönderen bütün

40

kaynaklar için tek bir ağaç oluşturulmaktadır. Bu sebeple yönlendiricilerde tutulması

gereken durum sayısı her grup için tektir. Dolayısıyla bu ağaçlar, gecikme yüksek

olsa bile pek çok kaynağı bulunan geniş çok hedefli iletim grupları için uygun

olmaktadır. SMT ağaçlarının hesaplanması çok karmaşık işlemler gerektirdiğinden

üretim istek üzerine (gerçek zamanlı) yapılmaktadır [17]. Geniş çizgeler söz konusu

olduğunda, hesaplamalardaki karmaşıklık, optimum yerine optimuma yakın SMT

ağaçları oluşturulmasına yarayan yeni tekniklerin geliştirilmesine yol açmıştır.

Sonuç olarak, SPT tekniği, minimum gecikme sağlamakta ve çok basit bir şekilde

hesaplanabilmektedir. SMT tekniği ise minimum maliyet sunmakta fakat çok

karmaşık hesaplamalar sonucunda oluşturulabilmektedir. Buna ek olarak çok hedefli

iletim içerisinde hangi ağacın kullanılması gerektiği, grup mevcuduna, düğümlerin

ortalama sayısına ve grup üyelerinin şebeke içerisinde nerede bulunduğuna göre

değişmektedir. Grup üyelerinin birkaç bölge içerisine yoğun olarak dağıldığı

senaryolarda SPT teknikleri, üyelerin şebeke üzerinde seyrek olarak dağılmış olduğu

durumlarda SMT teknikleri kullanılmaktadır [18]. Buna ek olarak, SMT ağaçlarının

köküne, çekirdek veya randevu noktası denmektedir. SPT türünün kullanıldığı

protokollere örnek olarak PIM-DM [19], SMT türünün kullanıldığı protokollere

örnek olarak CBT [20] veya PIM-SM [21] verilebilir.

3.1.1. YayılmıĢ Ağaç Çok hedefli Ġletim Yönlendirmesi

Yönlendirmenin veri bağlantı katmanında gerçekleştirildiği şebekelerde, tek bir

yayılmış ağaç (single spanning tree) tekniği kullanılmaktadır. Bu tür şebekelerde

köprüler kullanılmaktadır. Saydamlığın korunabilmesi için, köprüler bütün yayınları

ve çok hedefli iletim trafiğini bütün kesimlere iletmektedir. Çok hedefli iletim

paketlerinin, genişletilmiş LAN’ın her bölümüne iletilmesi istenmeyen bir durumdur.

Köprüler genelde bütün trafiği tek bir yayılmış ağaç içerisinde sınırlamakta ve

böylece fiziksel kısır döngüler engellenmektedir. Bir çok hedefli iletim veya yayın

paketi alındığında; bu paket gelen şebeke arabağdaşımı haricinde diğer bütün

arabağdaşımlara iletilmektedir. Kullanılan yayılmış ağaç topolojisi sayesinde bu

paket bütün kesimlerde sadece bir kere duyulmaktadır. Köprüler üzerinde, belirli bir

çok hedefli iletim grubu için üyelerin listesi tutulduğu takdirde, çok hedefli iletim

paketlerinin sadece o üyelerin bulunduğu dallara iletilmesi sağlanmaktadır. Bu tür

öğrenebilen köprülerde, tek hedefli iletim için (adres, çıkış dalı, yaş) kayıtlarının

41

bulunduğu bir liste tutulmaktadır. Yaş kaydı, güncel olmayan bilgilerin ayıklanması

için kullanılmaktadır. Tek bir çok hedefli iletim grubunun birden fazla çıkış dalı

olabileceği için, çok hedefli iletim grupları için bu liste (adres, (çıkış dalı, yaş), (çıkış

dalı, yaş), …) şeklinde tutulmaktadır. Köprüler, üyelik raporları aldığında bu listeyi

güncellemektedir. Çok hedefli iletim paketleri gönderilirken bu liste göz önüne

alınmaktadır. Paketin geldiği dal, çıkış dalları arasından silinmekte ve iletim geriye

kalan dallara yapılmaktadır. Grup üyeleri, köprülerin üyelik bilgilerini güncel

tutabilmesi için düzenli olarak rapor göndermektedir.

3.1.2. Uzaklık Vektörü Çok hedefli Ġletim Yönlendirmesi

Uzaklık vektörü yönlendirme algoritmaları köklü bir geçmişe sahiptir. ARPANET’in

ilk kurulduğu yıllarda, yönlendirme bu sınıfa ait protokollerle yapılmıştır [22]. Bu

yöntemi kullanan yönlendiriciler, yönlendirme tablolarında ulaşılabilen her hedef

için bir kayıt tutmaktadır. Hedefler bir sistem, bir alt şebeke veya bir alt şebeke

grubu olabilmektedir. Bu kayıtlar (hedef, uzaklık, bir sonraki adım adresi, bir sonraki

adım bağlantısı, yaş) olarak tutulmaktadır. Kayıtlar içerisinde bulunan uzaklık,

hedefin kaç adım uzakta olduğunun bilgisini, bir sonraki adım adresi o hedefe ilişkin

yönlendiricinin adresini, bir sonraki adım bağlantısı, bu yönlendiriciye hangi

arabağdaşım üzerinden erişilmesi gerektiğini, yaş ise kaydın kullanım süresini

belirtmektedir. Yönlendiriciler, bütün bağlantıları üzerinden periyodik olarak (hedef,

uzaklık) kayıtları içeren yönlendirme paketleri göndermektedir. Bu kayıtlara uzaklık

vektörü denmektedir. Bu paketleri alan yönlendiriciler, alınan kayıtlara göre kendi

tablolarını güncellemekte ve böylece ilgili hedeflere ilişin en kısa yolu bulmaktadır.

Uzaklık vektörü yönlendirme protokollerine çok hedefli iletim yönlendirmesinin

eklenmesi, bütün bağlantılar üzerinden tek bir yayılmış ağaç oluşturularak

yapılmaktadır. Ancak pek çok alternatif bağlantının bulunduğu genel bir topolojide,

bütün kaynaklardan bütün hedeflere optimum bir yayılmış ağaç bulmak mümkün

olmamaktadır. Bunun yerine her bir kaynak ve hedef grubu için birbirinden farklı en

kısa yol ağaçları oluşturulmaktadır. Kökü bir kaynakta bulunan her dal, kökü yine

aynı kaynakta bulunan tek bir en kısa yol yayın ağacının alt ağaçları olmaktadır.

Bir yönlendiricinin, S kaynağından aldığı yayın paketini iletilebilmesi için, o paketin

S kaynağına ulaşmak için kullanılan en kısa yoldan gelmesi gerekmektedir. Bu

kontrol mekanizmasına “Ters Yol İletimi - (Reverse Path Forwarding)” denmektedir.

42

Buna uyan paketler, paketin alındığı (bir başka deyişle kaynağa en kısa yol olan)

bağlantı haricinde bütün bağlantılara gönderilmektedir. Bir yönlendiricide, bu

mekanizmanın kullanılabilmesi için herhangi bir sistemden yönlendiriciye olan en

kısa yolun tespit edilebiliyor olması yeterlidir. Bu iş için, uzaklık vektörü

yönlendirmesi kullanılan yönlendiricilerde tek hedefli iletim trafiği için oluşturulmuş

tablolara bakılmaktadır. Bu mekanizmanın çok hedefli iletimde kullanılabilmesi için,

çok hedefli iletim grup adresleri kümesi tanımlanmalı ve bu küme içerisindeki

gruplara gönderilen paketlerin kaynakları için ters yol iletim denetimi yapılmalıdır.

Bu kümelerin belirlenmesi, sistemlerden gelen raporlara göre olmaktadır. İletim

ortamındaki şebekeler, noktadan noktaya bağlantılardan oluşmakta ve alıcı

sistemlerin büyük bir bölümü yerel alan şebekelerinde bulunmaktadır. Ters yol

algoritmasına göre paket; paketi alan yönlendirici, o paketin geldiği yönlendiriciyi

paketin kaynağına olan en kısa yol olarak tanımlanabildiği zaman iletilmektedir. En

kısa yol kontrolü, paketi alan yönlendiricide kaynak için tanımlı olan “bir sonraki

adım adresi”, paketi gönderen yönlendirici olduğu zaman başarıya ulaşmaktadır. Bu

şekilde yapılan ters yol iletimine “ters yol seli veya taşkını - (Reverse Path Flooding,

RPF)” denmektedir. RPF’nin bir dezavantajı, pek çok yönlendiricinin bağlı olduğu

bir bağlantıya birden fazla yayının gönderilmesidir. Bunun sebebi, yayınların kaynak

bağlantı haricinde bütün bağlantılara sel halinde gönderilmesidir. Bu mekanizmada

en kısa yol ağacı göz önüne alınmamaktadır. RPF algoritması sonucunda oluşan

kopya paketlerin engellenmesi için her yönlendiricinin, kendi bağlantılarını her

kaynak için ayrı ayrı oluşturulan “en kısa ters yol ağacına” göre alt dal (child) olup

olmadığını belirleyebiliyor olması gerekmektedir. Böylece S kaynağından gelen

paketler, o kaynağa doğru en kısa ters yoldan geldiğinde, sadece alt dallara (bir başka

deyişle ilgili olan dallara) iletilmektedir. Alt dalların hangileri olduğunun

bulunabilmesi için önerilen yollardan biri, bütün yönlendiricilerin komşu

yönlendiricilere periyodik olarak “Bu hedefler için bir sonraki adımım sensin”

tarzında mesajlar göndermesidir [15]. Bu yöntemin yanı sıra uzaklık vektörü

yönlendirmesi paketlerindeki bilgiler de bu iş için kullanılabilmektedir. Bu teknikte,

her bir kaynak için bağlantı başına tek bir üst dal (parent) yönlendiricisi

belirlenmektedir. Bu yönlendirici, genellikle kaynağa en yakın olan yönlendirici

olarak seçilmektedir. Uzaklık vektörü yönlendirmesi kullanıldığı için her

yönlendirici, komşu yönlendiricilerin S kaynağına ne kadar uzak olduğunu

43

öğrenmekte ve böylece belirli bir bağlantı için üst dal yönlendiricisi olup olmadığını

kendi başına saptayabilmektedir. Bununla ilgili bir örnek şekil 3.1’de verilmektedir.

S

YL

a

b

5 6

Z

Şekil 3.1 - Ters yol iletim örneği

Şekil 3.1’de görülmekte olan yapıda, b olarak isimlendirilen LAN, bir yaprak

LAN’dır. S kaynağının L yönlendiricisine olan uzaklığı 5, Y yönlendiricisine olan

uzaklığı 6 ve L yönlendiricisinin Z yönlendiricisine olan uzaklığı 1’dir. RPF

algoritması göz önüne alındığında S’ten gelen bir paket için her iki yönlendirici de

yayın almaktadır. İki yönlendirici de a LAN’ına bağlı olduğu için, bu LAN’a iki adet

yayın gönderilecektir. Dolayısıyla a LAN’ına bağlı olan sistemler aynı yayını iki

kere duyacaktır. Z yönlendiricisi bu yayınlardan sadece bir tanesini (L’ten geleni) b

LAN’ına aktarmalıdır çünkü S kaynağına en kısa yolun L olduğunu bilmektedir. Bu

örnekte a LAN’ının birden fazla yayın paketi alması bir sorundur. Üst dal seçim

tekniği kullanıldığında uzaklık vektörü yönlendirme algoritması sayesinde bütün

yönlendiriciler L yönlendiricisinin S kaynağına en yakın yönlendirici olduğunu

anlayacaktır. Dolayısıyla S kaynağı göz önüne alındığında, sadece L yönlendiricisi a

LAN’ı için bir alt dal bağlantısı oluşturacak ve böylece Y yönlendiricisi a LAN’ına

yayın yapmayacaktır. Uzaklıklar eşit olduğu zaman, düşük IP numarasına sahip olan

yönlendirici alt dal bağlantısı için öncelik kazanmaktadır. Üst dal seçim tekniği için,

yönlendirme tablolarına tek bitten oluşan yeni bir sütunun eklenmesi gerekmektedir.

Alt dal biti olarak isimlendirilen bu sütun, o bağlantının alt dal olup olmadığını

belirtmek için kullanılmaktadır. Bir başka deyişle, hedefle ilgili kayıt içerisinde

bulunan “l” bağlantısına ilişkin alt dal biti, o hedeften gelen yayınlar için l bağlantısı

bir alt dal ise, “1” olarak ayarlanmaktadır. Yayınlar bu teknik sayesinde her şebekeye

sadece bir kere yayınlandığı için bu tekniğe “Ters Yol Yayınlaması - (Reverse Path

Broadcasting, RPB)” denmektedir.

44

RPF ve RPB algoritmaları, yayınların doğru bir biçimde bütün şebekelere ulaşmasını

sağlamaktadır. Gereksiz trafiğin süzülmesi, şebekeler içerisinde bulunan sistemlerin

filtrelerine bırakılmıştır. Bu mantık, küçük ölçekli geniş alan şebekelerinde işe

yaramakta fakat ölçek büyüdükçe trafik sorunlarını beraberinde getirmektedir. Büyük

ölçekli geniş alan şebekelerinde, çok hedefli iletim trafiğinin sadece gereken yerlere

ulaşması istenmektedir. Bunun için sistemlerin, üyelik isteklerini yönlendiricilere

bildirmesi gerekmektedir. S kaynağından G grubuna en kısa yol çok hedefli iletim

dağıtımının yapılabilmesi için; kökü S kaynağında olan en kısa yol yayın ağacının

sadece üyelerin mevcut olduğu şebekelere giden bağlantıları kapsaması gerekmekte

ve üyeleri içermeyen bağlantıların kaynağa doğru budanması, çıkarılması (pruning)

gerekmektedir. Budama işlemi için G grubunun üyesi olan sistemlerin S kaynağına

doğru en kısa yol boyunca üyelik mesajları göndermesi sağlanabilir. Fakat bu

mesajların her grup için gönderilmesi, bandgenişliğinin ve yönlendiricilerdeki hafıza

birimlerinin yoğun olarak kullanılması anlamına gelmektedir. Dolayısıyla ilk

zamanlarda bu yöntem yerine, sadece üye olmayan yaprak şebekelerin rapor

göndererek ağaçtan çıkarılması fikri daha yerinde bulunmuştur. Çok hedefli iletim

paketlerinin, üye bulundurmayan bir yaprak bağlantıya iletiminin durdurulması için

öncelikle yaprak bağlantıların hangisi olduğunun bulunması ve daha sonra o yaprak

bağlantılarda üyelerin mevcut olup olmadığının tespit edilmesi gerekmektedir. Alt

dal bağlantılarını bulunması için kullanılan yöntem, yaprak bağlantıların bulunması

için de kullanılmaktadır. Yaprak bağlantılar, başka bir yönlendiricinin S kaynağına

ulaşmak için kullanmadığı ve sadece grup üyeleri olan bağlantılardır. Şekil 3.1’de

kaynağı S olan bir ağaç için b LAN’ı bir yaprak bağlantısıdır. Bu bilginin

oluşturulabilmesi için her yönlendiricinin, bütün bağlantılarından “bu bağlantı benim

bu hedefe ulaşmak için kullandığım bir sonraki adımım” tarzında yayınlar yapması

gerekmektedir. Bir takım uzaklık vektörü yönlendirme protokolleri [23] bu bilgiyi

yönlendirme paketleri içerisinde taşımaktadır. Bu bilginin taşınmadığı durumlarda,

yönlendirme paketleri içerisindeki (hedef, uzaklık) kayıtlarına tek bitten oluşan bir

bilgi eklenmesi gerekmektedir. Bu bit alanında, yönlendirme mesajının yollandığı

bağlantı üzerinden hangi hedeflere erişildiğinin bilgisi bulunmaktadır. Buna ek

olarak, yönlendirme tablolarına alt dal bağlantılarının, yaprak bağlantı olup

olmadığının gösterimi için tek bitlik bir alan daha eklenmesi gerekmektedir. Yaprak

bağlantılar bu şekilde bulunmaktadır. Üye olan her sistem yerel bir üyelik mesajı

göndermektedir. Bu sayede yönlendiriciler hangi bağlantılarında hangi gruba ait

45

üyeler olduğunun bir listesini çıkartmaktadır. Ters yol iletim kuralı bu bilgiler

ışığında; S kaynağından G grubuna bir çok hedefli iletim paketi, S için bir sonraki

adım bağlantısından alındığında; üye bulunmayan yaprak bağlantılar haricindeki

bütün alt dal bağlantılarına bir kopyanın gönderilmesi olarak tanımlanmaktadır. Bu

yönteme “Kısaltılmış Ters Yol Yayınlaması - (Truncated Reverse Path Broadcasting,

TRPB)” denmektedir.

Gönderilen üyelik mesajlarının ışığında en kısa yol yayın ağaçlarının budanması,

yüksek miktarda şebeke trafiği yaratmaktadır. Büyük ölçekli geniş alan

şebekelerinde bütün kaynakların bütün çok hedefli iletim gruplarına bilgi göndermesi

beklenmemektedir. Dolayısıyla bütün olası ağaçların budanması kaynakların boşa

harcanmasına sebep olmaktadır. Bu yöntem yerine, sadece kullanımda olan gruplara

ilişkin ağaçların budanması daha verimli olmaktadır. Bu yönteme, isteğe bağlı (on-

demand) budama denmektedir. Bir kaynak, bir gruba ilk defa bilgi yolladığında,

TRPB algoritmasına göre, üye bulundurmayan yaprak bağlantılar haricinde bütün

bağlantılara yayın yapılmaktadır. Burada yaprak bağlantıların sadece üye

bulundurabileceği ve ayrıca bütün bağlantılar söylemindeki diğer bağlantıların üst

dal veya alt dal bağlantılar olduğu unutulmamalıdır. Bütün alt dallarının üye

içermeyen yaprak bağlantılar olduğu bir yönlendirici, S kaynağından bir paket

aldığında o (kaynak, grup) çifti için bir üyelik yok raporu (non-Membership Report,

NMR) oluşturulmakta ve kaynağa doğru bir sonraki adım yönlendiricisine

gönderilmektedir. Bu mesajı alan yönlendirici, bütün alt dal yönlendiricileri için

NMR mesajı aldığında (ve kendi yaprak dal bağlantılarında üyeler mevcut değilse)

kaynağa doğru bir sonraki adım yönlendiricisine NMR mesajı yollamakta ve bu

işlem kaynağa doğru devam etmektedir. Bu sayede ağaç içerisindeki üye

bulundurmayan dallar budanmaktadır. Bütün NMR mesajlarının içerisinde bir yaş

alanı bulunmaktadır. Bu değer sıfırlandığı zaman daha önceden gönderilmiş olan

NMR mesajı güncelliğini yitirmektedir. Bu zamanlayıcı dolduktan sonra budanan her

yol ağaca tekrar eklenmektedir. Bu zamanlayıcı dolmadan o bağlantı için yeni bir

üye ortaya çıktığında NMR mesajının etkisini yok etmek için NMR iptal mesajları

yollanmaktadır. Bu algoritma, “Ters Yol Çok Hedefli İletimi - (Reverse Path

Multicasting, RPM)” olarak isimlendirilmektedir.

46

3.1.3. Bağlantı Durumu Çok Hedefli Ġletim Yönlendirmesi

Geniş kullanım alanı bulmuş olan diğer bir yönlendirme algoritması da bağlantı

durumu yönlendirmesidir. Bu tarz yönlendirme algoritmalarının temelleri 1980

yılında atılmıştır [22]. Bu algoritmada, bütün yönlendiriciler sahip oldukları

bağlantıları gözlemekte ve bağlantı durumlarında herhangi bir değişiklik olduğunda

yeni durumu bütün bağlantıları üzerinden yayınlamaktadır. Bu yayınlar sayesinde,

bütün yönlendiriciler şebekenin genel bir topolojisini oluşturabilmektedir. Bu bilgi

ışığında bütün yönlendiriciler Dijkstra algoritmasını [24] kullanarak kökte kendisinin

bulunduğu bir en kısa yol ağacı oluşturmaktadır. Paketlerin yönlendirilmesi için, en

kısa yol, bu ağaç kullanılarak tayin edilmektedir. Yönlendiricilerin yolladıkları

bağlantı durumu bilgilerinde, o bağlantıda üyesi bulunan grupların listesinin

gönderilmesi, bağlantı durumu yönlendirmesinin kolayca en kısa yol çok hedefli

iletim yönlendirmesini de kapsayacak hale gelmesine olanak tanımaktadır. O

bağlantıya ait yeni bir grup ortaya çıktığında veya var olan gruplardan biri

eksildiğinde bağlantı durum bilgisi bütün yönlendiricilere yayınlanmaktadır.

Yönlendiriciler, hangi bağlantılarda hangi çok hedefli iletim gruplarının olduğu

bilgisi ışığında herhangi bir kaynaktan herhangi bir gruba en kısa yol çok hedefli

iletim ağacını oluşturabilmektedir. Bağlantılarda hangi gruplara ait üyelerin olduğu,

uzaklık vektörü yönlendirmesinde olduğu gibi üye alıcı sistemlerin üyelik raporları

göndermesiyle bulunmaktadır. Bir bağlantı üzerinde birden fazla yönlendirici olduğu

zaman, gruplara ilişkin durum değişikliklerinin yayınlanması sadece bir yönlendirici

tarafından yapılmakta ve böylece gereksiz trafik oluşturulmamaktadır. Her bir

kaynak ve her bir hedef için ayrı ayrı çok hedefli iletim ağaçları oluşturulmaktadır.

Yönlendiricilerin bütün ağaçları hafızalarında tutmaları, kaynakların (Burada

bahsedilen kaynak, yönlendiricilerde bulunan hafıza birimleri ve işlem gücüdür.)

boşa harcanmasına sebep olacağı için, ağaçlar sadece istek üzerine (on-demand)

oluşturulmaktadır. Her yönlendirici, hafızasında çok hedefli iletim yönlendirmesi

için (kaynak, alt ağaç, (grup, bağlantı TTL’i), (grup, bağlantı TTL’i), …) listesini

tutmaktadır. Burada kaynak, çok hedefli iletim kaynağını; alt ağaç, kökü S

kaynağında olan en kısa yol ağacının bir bölümü olan ve bu yönlendiriciden gruba

doğru olan alt ağacı; grup, çok hedefli iletim hedef grubunu; bağlantı TTL’i, ise her

bağlantının TTL’inin bulunduğu bir vektörü temsil etmektedir. TTL değeri olarak

47

sonsuz değerinin kullanımı (Burada sonsuz aslında algoritmaya göre çok yüksek bir

sonlu değeri temsil etmektedir.) o bağlantı üzerinde herhangi bir üye bulunmadığını

göstermektedir. Yönlendirici, çok hedefli iletim paketi aldığında, ilk olarak kaynağın

önbellekte kayıtlı olup olmadığını kontrol etmektedir. İlgili kayıt mevcut ise (grup,

bağlantı TTL’i) alanlarından uygun grup aranmaktadır. Uygun kayıt bulunduğunda

paket, bağlantı TTL’i bölümündeki TTL değeri gözetilerek ilgili bütün bağlantılara

yönlendirilmektedir. Kaynak kaydı bulunmakta fakat grup kaydı bulunmamakta ise

ilgili bağlantılar ve TTL değerleri hesaplanmak zorundadır. Bu alanların

hesaplanabilmesi için alt ağaç taranmakta ve oluşturulan yeni (grup, bağlantı TTL’i)

kayıtlar önbelleğe eklenmektedir. Önbellekte kaynağa ilişkin bir kayıt bulunamadığı

takdirde en kısa yol ağacı baştan hesaplanmaktadır. Daha sonra o yönlendiriciye

ilişkin alt ağaç bulunmakta ve grup alt ağaç ikilisi önbelleğe yerleştirilmektedir.

İşlemler yukarıda açıklandığı gibi devam ettirilmekte ve sonucunda paket gerekli

bağlantılara iletilmektedir. Bu yöntemin bir dezavantajı, iletilen ilk çok hedefli iletim

paketinde oluşan gecikmedir. Bunun nedeni her düğümde önbellekte bulunmayan en

kısa yol ağaçlarının hesaplanma gecikmesidir. Bağlantı durumu çok hedefli iletim

yönlendirme protokollerine örnek olarak OSPF [26] protokolüne çok hedefli iletim

uzantıları eklenerek oluşturulan MOSPF [27] protokolü verilebilir.

3.1.4. Çok Hedefli Ġletim Yönlendirmesinin HiyerarĢik Düzende Yapılması

Şuana kadar açıklanmakta olan bütün ters yol algoritmaları şebekeler bütününde tek

bir yönlendirme algoritması geçerli iken kullanılabilmektedir. Fakat pratikte geniş

ölçekli şebekelerde birden fazla yönlendirme algoritması kullanılmaktadır. Bunun

nedeni, şebekelerin farklı organizasyonel varlıklar tarafından yönetiliyor olmasıdır.

Böyle bir yapıya örnek olarak otonom sistemler verilebilir. Bu tür şebekelerde tek bir

yönlendirme algoritmasının bulunduğu alan bir üst seviye yönlendirme algoritması

için tek bir bağlantı olarak kabul edilmektedir. Hiyerarşik yönlendirme, bu tür

seviyeler kullanılarak gerçekleştirilmektedir. Bu sayede yönlendiriciler içerisinde

tutulması gereken topoloji bilgileri azaltılmakta ve sonuçta ölçeklenebilirlik

arttırılmaktadır. Bunun nedeni yönlendiricilerin bütün şebekeye ilişkin bilgileri

tutmak yerine sadece içinde bulundukları alana ilişkin topoloji bilgilerini tutmasıdır.

Bütün çok hedefli iletim algoritmaları bağlantılar üzerinde kullanıma elverişli olduğu

için bütün bir şebeke alanının tek bir bağlantı olarak düşünülerek hareket edilmesi

48

sorun yaratmamaktadır. Etki alanları arasında çok hedefli iletim yönlendirmesinin

yapılabilmesi için günümüzde Harici Şebeke Geçidi Protokolü (Border Gateway

Protocol, BGP-4) [28] üzerine çoklu protokol eklentilerinden [29]

yararlanılmaktadır. Gelecekte bu işin Harici Şebeke Geçidi Çok Hedefli İletim

Protokolü BGMP [30] kullanılarak yapılması için çalışmalar devam etmektedir.

3.2. Protokolden Bağımsız Çok Hedefli Ġletim Seyrek Modu (PIM – SM)

Protokolden Bağımsız Çok Hedefli İletim – Seyrek Modu (Protocol Independent

Multicast – Sparse Mode, PIM – SM) ilk olarak D. Estrin, D. Farinacci, S. Deering

ve çalışma arkadaşları tarafından Haziran 1997’de 2117 numaralı RFC [31] olarak

yayımlanmıştır. İlerleyen dönemlerde çeşitli eksikler fark edilmiş ve protokol

Haziran 1998’de 2362 numaralı RFC [21] olarak tekrar yayımlanmıştır. Daha sonra

B. Fener ve çalışma arkadaşları tarafından Ocak 2003’te yeni bir sürüm hazırlanmış

ve Internet taslağı olarak sunulmuştur [33]. Protokolün standartlaştırılması için

yapılan çalışmalar halen devam etmektedir. PIM-SM sayesinde çok hedefli iletim

yönlendirmesine iki yenilik getirilmiştir. Bunlardan ilki, geçmişte kullanılan çok

hedefli iletim yönlendirme protokollerinin [20,25,27] aksine kaynak rotaları için var

olan herhangi bir tek hedefli iletim yönlendirme protokolünün kullanılabilmesi; bir

başka deyişle belirli bir tek hedefli yönlendirme protokolüne ihtiyaç duyulmamasıdır.

İkincisi ise her grup başına, kökü randevu noktasında (RP) olan tek yönlü paylaşımlı

ağaçlar oluşturulması ve isteğe bağlı olarak kaynak başına en kısa yol ağaçlarına

geçilebilmesidir. Randevu noktası, SMT ağaçlarında köke verilen isimdir. Bu şekilde

geniş alan şebekeleri içerisine yayılmış olan grup üyeleri için yönlendirme

sağlanabilmektedir. PIM-SM, bu sebeplerden dolayı Internet üzerinde en geniş

kullanım alanı bulmuş etki alanı içi çok hedefli iletim yönlendirme protokolü

olmuştur.

PIM, kendi yönlendirme tablosunu doldurmak için kullanımda olan herhangi bir tek

hedefli yönlendirme protokolünden veya MBGP [29] gibi diğer çok hedefli iletim

yönlendirme protokollerinden gelen bilgileri kullanmaktadır. Bu yönlendirme

tablosu, “Çok Hedefli İletim Yönlendirme Bilgi Bankası - (Multicast Routing

Information Base, MRIB)” olarak isimlendirilmektedir. MRIB’ın görevi, hedef

şebekeler için çok hedefli iletim özelliğine sahip bir sonraki adım yönlendiricisi

49

bilgisini ve katılım / budama mesajları için bir sonraki adım komşu bilgisini

sağlamaktır. Bilgi akışı, tek hedefli RIB’in aksine katılım mesajlarının ters yönüne

doğrudur. Bir başka deyişle MRIB içerisinde ters yön bilgileri tutulmaktadır. PIM-

SM protokolünde bilgi paketlerinin yönlendirilmesi üç safhadan oluşmaktadır. Bu üç

safha, kaynaklar ve hedefler her an değişebildiği için aynı anda oluşabilmektedir.

İlk safha, RP ağacı olarak isimlendirilmektedir. Bu safhada öncelikle doğrudan bağlı

olan bir sistem, çok hedefli iletim trafiği alma isteğini belirtmektedir. Bu istek, IGMP

veya MLD [2] kullanılarak, ilk adım çok hedefli iletim yönlendiricisine

iletilmektedir. Bu isteğin karşılanabilmesi için, o sistemin yerel şebekesinde bulunan

yönlendiricilerden bir tanesi, seçilmiş yönlendirici (Designated Router, DR) olarak

belirlenmektedir. DR, iletimin yapılacağı çok hedefli iletim grubu için belirlenmiş

olan RP’ye PIM katılım mesajı yollamaktadır. Bu mesaj o gruba bilgi gönderen

bütün kaynakları içerdiği için (*,G) katılımı olarak isimlendirilmektedir. Burada

parantezin içerisindeki ilk bölüm kaynak IP adresini, ikinci bölüm ise hedef grup IP

adresini temsil etmektedir. (*,G) katılım mesajı, RP’ye doğru adımdan adıma

ilerlemekte ve her adımda bulunan yönlendirici üzerinde G grubu için bir durum

oluşturulmasına sebep olmaktadır. Böylelikle mesaj, sorumlu RP’ye veya (*,G)

katılım durumu mevcut olan bir yönlendiriciye ulaşmaktadır. Bu katılım istekleri,

kökü RP’de bulunan bir dağıtım ağacı oluşturulması amacıyla kullanılmaktadır. RP

ağacı (RPT) olarak da bilinen bu ağaç, o gruba bilgi gönderen bütün kaynaklar

tarafından ortak kullanılmakta olduğu için paylaşımlı ağaç olarak

isimlendirilmektedir. Alıcı sistemler, grupta kaldığı sürece katılım mesajları

periyodik olarak tekrar yollanmaktadır. Bir yönlendiriciye bağlı yaprak şebekelerin

hiçbirinde alıcı kalmadığı zaman DR, (*,G) budama mesajı göndermektedir. Çok

hedefli iletim kaynakları, ilgili grup için bilgi yollamaya anında başlamaktadır.

Kaynağın içinde bulunduğu şebekenin DR’ı, bu paketleri alarak tek hedefli iletim

olarak zarflamakta ve doğrudan RP’ye göndermektedir. Bu paketler RP’de açılmakta

ve paylaşımlı ağaç üzerine yollanmaktadır. Bilgi paketlerinin RP’ye doğru

zarflanmasına kayıt olma (register) denmektedir ve bu işlem PIM kaydolma

mesajlarıyla yapılmaktadır. İlk safhanın bitiminde çok hedefli iletim bilgileri RP’ye

doğru zarflanmış ve RP ağacından alıcılara doğru çok hedefli olarak iletilmektedir.

Bilgi paketlerine kaydolma zarflaması uygulanması, iki nedenden ötürü başarımı

düşürmektedir. İlk neden, zarflama işleminin getirdiği ek yük, ikincisi ise bu

50

paketlerin kaynaktan RP’ye ve daha sonra da paylaşımlı ağaç üzerinden alıcılara

iletilmesinin kaynağa yakın olan alıcılar için uzun gecikmelere sebep olmasıdır.

Kaydolma zarflaması iletimin sonuna kadar kullanılabilmektedir. Fakat yukarıda

bahsedilen nedenlerden ötürü iletimin değiştirilmesinde fayda vardır. Bu işlem

kaydolma zarflamasının durdurulması olarak isimlendirilen ikinci safhada

yapılmaktadır. Bunun için RP, kaydolma zarflamasına sahip bir paket aldığında,

paketin kaynağına doğru bir kaynağa özgü (S,G) katılım mesajı göndermektedir. Bu

mesaj kaynağa doğu adım adım yollanmakta ve her adım yönlendiricisinde (S,G)

durum bilgisi yaratılmasına ve sonunda, kökü S kaynağında olan bir (S,G) kaynak

ağacı oluşturulmasına yol açmaktadır. (S,G) ağacının temel görevi, çok hedefli iletim

trafiğinin sadece S kaynağından geldiğinde G grubuna iletiminin sağlanmasıdır.

Katılım mesajları, S kaynağının bulunduğu şebekeye ulaştığı zaman, (S,G) çok

hedefli iletim ağacı durumu bulunduran bir yönlendiriciye ulaşmış olmakta ve bu

sayede bilgilerin bu ağaç üzerinden RP’ye iletimine başlanmaktadır. Yol üzerinde

(*,G) durum bilgisine sahip olan yönlendiriciler, alternatif olarak (S,G) ağacına

katılıp bilgileri RP ağacından almak yerine (S,G) ağacından almaya

başlayabilmektedir. (S,G) kaynak ağacının oluşturulması sırasında RP, kaydolma

zarflaması ile gelen mesajları almaya devam etmektedir. Kaynak ağacı

yapılandırması tamamlandıktan sonra RP’ye her iki şekilde de bilgi gelmekte

dolayısıyla her paketten iki adet kopya bulunmaktadır. Bu aşamada RP, kaydolma

zarflaması yoluyla gelen paketleri görmezden gelmekte ve kaynağın DR’ına

kaydolma durdurma mesajı yollamaktadır. İkinci safhanın sonunda çok hedefli iletim

trafiği, S kaynağından RP’ye doğru kaynak ağacından; RP’den alıcılara ise

paylaşımlı ağaçtan akmaktadır. İki ağacın buluştuğu noktalarda trafik, RP ağacından

kaynak ağacına aktarılabilmekte ve bu sayede yol kısaltılmaktadır.

Üçüncü ve son safha en kısa yol ağacı safhası olarak isimlendirilmektedir. Kaynak

ile RP arasındaki trafiğin sarmalama metodundan çıkarılarak kaynak ağacına

geçirilmesi performansı arttırmakta fakat iletim yollarını tamamen optimize

etmemektedir. Gecikme sürelerinin düşürülmesi için alıcının şebekesinden sorumlu

DR, paylaşımlı ağaçtan kaynağa özgü en kısa yol ağacına (SPT) geçebilmektedir.

Bunun için DR, S kaynağına doğru (S,G) katılım mesajı göndermektedir. S

kaynağına doğru olan yoldaki ilk adım yönlendiricisi bu mesaj ile birlikte bir (S,G)

durumu oluşturmaktadır. Katılım mesajı ya S kaynağına ya da (S,G) durumu olan bir

51

yönlendiriciye ulaşmakta ve nihayetinde trafik alıcıya kadar (S,G) ağacından akmaya

başlamaktadır. Bu noktada alıcıya (veya yukarıakım yönlendiricisine) SPT’den ve

RPT’den birer adet olmak üzere toplam iki adet kopya iletilmektedir. SPT’den gelen

trafik, alıcı DR’ına ulaştığı anda DR (veya yukarıakım yönlendiricisi) RPT trafiğini

kesmek için harekete geçmektedir. Bunun için RP’ye doğru bir (S,G) budama mesajı

yollanmaktadır. Bu mesaja (S,G,rpt) budaması denmektedir. Mesaj, RP’ye doğru

adım adım iletilmekte ve her adım yönlendiricisinde (S,G) durumunun silinmesine

yol açmaktadır. Budama mesajı, RP’ye veya S kaynağından gelen trafiğe ihtiyaç

duyan ilk yönlendiriciye kadar iletilmektedir. Bu safha sonunda alıcı S kaynağından

gelen trafiği S kaynağı ile kendisi arasında olan SPT üzerinden almaktadır. Buna ek

olarak RP, S kaynağından trafiği almakta fakat bu trafik alıcıya ulaştırılmamaktadır.

Bahsi geçen alıcı için bu durum son durumdur.

IGMP protokolünün üçüncü sürümü [13], alıcıların belirli bir grup için almak

istedikleri trafiğin hangi kaynaklardan gelmesini veya bütün kaynaklardan gelip

sadece belirtilen kaynaklardan gelmemesini seçebilmelerine izin vermektedir. Bu

sayede DR’ın, sorumlu olduğu şebekedeki hiçbir alıcının (*,G) trafiğini istemediği

durumlarda, doğrudan kaynağa özgü (S,G) katılım mesajları gönderilmektedir.

Alcıların belirli kaynaklar haricinde bütün trafiği almak istemesi halinde (*,G)

katılım mesajları gönderilmekte ve bu mesajlar isteğe bağlı olarak (S,G,rpt) budama

mesajlarıyla birleştirilebilmektedir. İletim yolunun üzerinde Ethernet gibi çoklu

erişim şebekeleri bulunduğu zaman çeşitli sorunlar gündeme gelmektedir. Aynı yerel

şebekede bulunan iki farklı yönlendirici sorumlu RP’ye farklı yollardan (*,G) katılım

mesajları yolladığında paylaşımlı ağaç üzerinde aynı yere ulaşan iki farklı yol

oluşacaktır. Aynı durum (S,G) katılım mesajları ve kaynağa özgü ağaç için de

geçerlidir. Aynı şebeke için farklı yönlendiricilerin hem RPT’ye hem de SPT’ye üye

olması da farklı bir sorundur. Bu sorunların kaynağı aynı yerel şebekede birden fazla

yönlendiricinin görevleri üstlenmek istemesidir. Bunun önlenebilmesi için aynı yerel

şebekede bulunan PIM yönlendiricileri bu tür mesajları fark etmekte ve tek bir

sorumlu yönlendirici (DR) için bir seçim yapılmaktadır. Bu seçim PIM iddia (assert)

mesajlarıyla yapılmaktadır. Seçim, (S,G) durumu olan yönlendiricinin lehine

yapılmaktadır. Her iki yönlendiricinin de (S,G) durumu mevcut ise RP’ye doğru en

iyi metriği sağlayan yönlendirici seçilmektedir. (*,G) durumlarının oluşturulabilmesi

için PIM yönlendiricilerinin, o gruptan sorumlu olan RP’nin adresini bilmesi

52

gerekmektedir. Bu adresler ya statik olarak yapılandırılmakta ve ya bir önyükleyici

yönlendirici (Bootstrap Router, BSR) mekanizması sayesinde [33] edinilmektedir.

Bu mekanizmada PIM etki alanı içerisindeki bir yönlendirici, BSR olarak seçilmekte

ve diğer yönlendiriciler RP adayları olarak adaylıklarını periyodik olarak BSR’a

bildirmektedir. BSR, adaylar içerisinde bir RP kümesi belirleyerek bütün

yönlendiricilere bu kümeyi bildirmektedir. Bildirim mesajları, adım adım bütün etki

alanına iletilmekte ve böylece gruplardan sorumlu RP adresleri bütün etki alanına

dağıtılmaktadır.

3.2.1. PIM-SM Protokol Spesifikasyonu

Çok hedefli iletim ağaçlarının bütün durumları Ağaç Bilgi Bankası’nda (Tree

Information State, TIB) tutulmaktadır. TIB içerisinde dört farklı durum bilgisi

bulunmaktadır. Bunlar, belirli bir RP tarafından hizmet verilen bütün gruplara ilişkin

ağaçların tutulduğu (*,*,RP) durumu, G grubu tarafından kullanılmakta olan RP

ağacının tutulduğu (*,G) durumu, kökü S kaynağında olan ve G grubu için

oluşturulmuş olan kaynağa özgü ağacın tutulduğu (S,G) durumu ve G grubu için

ilgili RP ağacında S kaynağına özgü bilgilerin tutulduğu durum olan (S,G,rpt)

durumudur. Bir kaynak, kaynağa özgü ağaç sayesinde alıcılara ulaşıyorsa RP

ağacından budanmaktadır. Bu budama durumuna (S,G,rpt) durumu denmektedir.

Aşağıda durumlara ilişkin bilgiler sıralanmaktadır.

1. Genel Amaç Durumu;

(Her bir arabağdaşım için tutulmaktadır.)

1. Geçersiz kılma aralığı

2. İletim gecikmesi

3. Bastırma durumu (Geçerli değerleri: “etkin - etkin değil”)

4. Komşu Durumu;

(Her bir komşu için tutulmaktadır.)

1. HELLO mesajından edinilen komşu bilgileri

2. Komşunun kimlik bilgisini içeren ID’si (Generation ID)

3. Komşu yaşam zamanlayıcısı (Neighbor Liveness Timer)

5. DR durumu;

1. DR’ın IP adresi

2. DR’ın DR öncelik numarası

53

İletim gecikmesi değeri, alınan budama isteklerinin yukarıakım yönlendiricisine

iletilmeden önce diğer alıcılar veya aşağıakım düğümleri için ne kadar

bekletileceğini göstermektedir. Aynı yukarıakım yönlendiricisini kullanan

yönlendiriciler, herhangi bir yönlendiricinin gönderdiği budama mesajını iptal etmek

istediğinde geçersiz kılma mesajları göndermektedir. Yukarıakım yönlendiricisi

budama mesajını aldıktan sonra iletim gecikmesi kadar süre beklemekte ve bu süre

içerisinde diğer yönlendiricilerden iptal mesajları gelmediği takdirde ilgili dalı

budamaktadır. İptal mesajlarının anında gönderilmesi mesaj patlamasına sebep

olacağından; mesajlar maksimum uzunluğu geçersiz kılma aralığı olan rastlantısal bir

değer kadar bekledikten sonra gönderilmektedir. Bastırma durumu ise alıcıların

izlenmesi için kullanılmaktadır. Komşu durumunda, her komşu için HELLO

mesajından elde edilen komşu bilgisi, komşunun ID (Generation ID) bilgisi ve

komşu yaşama zamanlayıcısı (Neighbor Liveness Timer, NLT) bilgisi tutulmaktadır.

DR için ise DR’ın IP adresi ve DR öncelik numarası tutulmaktadır.

2. (*,*,RP) Durumu; (Her RP için tutulmaktadır.)

(Her arabağdaşım için tutulmaktadır.)

1. PIM (*,*,RP) Katılım/Budama Durumu;

1. Durum: “Bilgi Yok” (NI), “Katılım” (J), “Budama

Bekliyor”, (PP) değerlerinden birini almaktadır.

2. Budama bekliyor zamanlayıcısı (PPT)

3. Katılım/Budama geçerliliğinin sonra ermesi zamanlayıcısı

(ET).

2. Yukarıakım katılım/budama zamanlayıcısı (JT)

3. Kullanımda olan en son RPF komşusu.

PIM (*,*,RP) katılım/budama durumu, o arabağdaşım üzerinden alınan katılım ve

budama mesajları sonucu ortaya çıkan sonuç durumunu göstermektedir. Yukarıakım

katılım/budama zamanlayıcısı yukarıakım yönlendiricisine periyodik olarak PIM

katılım(*,*,RP) mesajları gönderilmesi için kullanılmaktadır. MRIB değiştiği zaman,

RP’ye doğru giden yolda komşu yönlendirici de değişebilmektedir. Bu durumda eski

yönlendiriciye PIM budama mesajı gönderilmesi gerekmektedir. Kullanımda olan en

son RPF komşusu bu sebepten dolayı saklanmaktadır.

54

3. (*,G) Durumu; (Her grup için tutulmaktadır.)

(Her arabağdaşım için tutulmaktadır.)

1. Yerel Üyelik Bilgileri;

1. Durum: “Bilgi Yok” veya “Ekle” değerlerini almaktadır.

2. PIM (*,G) Katılım/Budama Durumu;

1. Durum: “Bilgi Yok” (NI), “Katılım” (J), “Budama

Bekliyor” (PP) değerlerinden birini almaktadır.

2. Budama bekliyor zamanlayıcısı (PPT)

3. Katılım/Budama geçerliliğinin sonra ermesi

zamanlayıcısı (ET).

3. (*,G) İddia Kazanma Durumu;

1. Durum: “Bilgi Yok” (NI), “İddia Kaybedildi” (L),

“İddia Kazanıldı” (W) değerlerinden birini

almaktadır.

2. İddia zamanlayıcısı (AT)

3. İddiayı kazananın IP adresi

4. İddiayı kazananın iddia metriği

(Arabağdaşıma özgü olarak tutulmayan bilgiler;)

4. Yukarıakım katılım/budama zamanlayıcısı (JT)

5. Kullanımda olan en son RP

6. Kullanımda olan en son RPF komşusu.

Yerel üyelik bilgileri, IGMP protokolü sonucunda yerel şebekede bulunan alıcıları ve

sonuç kabul durumunu belirtmek için kullanılmaktadır. DR dışındaki

yönlendiricilerin bu bilgileri tutması gerekli kılınmamıştır. PIM (*,G)

katılım/budama durumu, o arabağdaşım üzerinden alınan katılım ve budama

mesajları sonucu ortaya çıkan sonuç durumunu göstermektedir. (*,G) iddia kazanma

durumu o arabağdaşım üzerinden PIM (*,G) iddia mesajları değiş tokuşu sonrasında

ortaya çıkan durumu göstermektedir. Yukarıakım katılım/budama zamanlayıcısı

yukarıakım yönlendiricisine periyodik olarak PIM katılım(*,G) mesajları

gönderilmesi için kullanılmaktadır. Kullanımda olan en son RP bilgisi, BSR

tarafından dağıtılan RP kümesi değiştiğinde var olan ağacın budanması için

kullanılmaktadır.

4. (S,G) Durumu; (Bütün kaynak/hedef grup çiftleri için tutulmaktadır.)

55

(Her arabağdaşım için tutulmaktadır.)

1. Yerel Üyelik Bilgileri;

1. Durum: “Bilgi Yok” veya “Ekle” değerlerini almaktadır.

2. PIM (S,G) Katılım/Budama Durumu;

1. Durum: “Bilgi Yok” (NI), “Katılım” (J), “Budama

Bekliyor” (PP) değerlerinden birini almaktadır.

2. Budama bekliyor zamanlayıcısı (PPT)

3. Katılım/Budama geçerliliğinin sonra ermesi zamanlayıcısı

(ET).

3. (S,G) İddia Kazanma Durumu;

1. Durum: “Bilgi Yok” (NI), “İddiayı Kaybedildi”

(L), “İddia Kazanıldı” (W) değerlerinden birini

almaktadır.

2. İddia zamanlayıcısı (AT)

3. İddiayı kazananın IP adresi

4. İddiayı kazananın iddia metriği

(Arabağdaşıma özgü olarak tutulmayan bilgiler;)

4. Yukarıakım (S,G) katılım/budama zamanlayıcısı (JT)

5. Kullanımda olan en son RPF komşusu.

6. SPT biti

7. (S,G) bağlantıyı canlı tutma zamanlayıcısı (KAT)

PIM (S,G) katılım/budama durumu o arabağdaşım üzerinden alınan katılım ve

budama mesajlarının sonucu ortaya çıkan sonuç durumunu göstermektedir. SPT biti

iletimin hangi ağaç üzerinden (SPT veya RPT) yapıldığını göstermektedir. (S,G)

bağlantıyı canlı tutma zamanlayıcısı (S,G) durumunun zaman aşımına uğramaması

için kullanılmaktadır.

5. (S,G,rpt) Durumu; ((*,G) ve (S,G) durumlarının mevcut olduğu her G

grubu için tutulmaktadır.)

(Her arabağdaşım için tutulmaktadır.)

1. Yerel Üyelik Bilgileri;

2. Durum: “Bilgi Yok” veya “Ekle” değerlerini almaktadır.

2. PIM (S,G,rpt) Katılım/Budama Durumu;

56

1. Durum: “Bilgi Yok” (NI), “Katılım” (J), “Budama

Bekliyor” (PP) değerlerinden birini almaktadır.

2. Budama bekliyor zamanlayıcısı (PPT)

3. Katılım/Budama geçerliliğinin sonra ermesi zamanlayıcısı

(ET)

(Arabağdaşıma özgü olarak tutulmayan bilgiler;)

3. Yukarıakım (S,G,rpt) Katılım/Budama Durumu;

1. Durum: “Katılınmamış(*,G)”, “Budanmamış(S,G,rpt)”

veya “Budanmış(S,G,rpt)” durumlarından birini

almaktadır.

2. Geçersiz kılma zamanlayıcısı (OT)

Yerel üyelik bilgileri IGMP ile elde edilmekte ve (*,G) trafiğinin (S,G) trafiğinden

farkının alınması isteğini belirtmektedir. PIM (S,G,rpt) katılım/budama durumu o

arabağdaşım üzerinden alınan katılım ve budama mesajlarının sonucu ortaya çıkan

sonuç durumunu göstermektedir. Yukarıakım (S,G,rpt) durumu, geçersiz kılma

zamanlayıcısı ile birlikte kullanılarak yukarıakım yönlendiricisine doğru budama

bilgilerinin iletilmesinde kullanılmaktadır. Çok hedefli iletimin gerçekleştirilebilmesi

için aşağıakım arabağdaşım listelerinin hazırlanması hayati önem taşımaktadır. Eğer

ilgili duruma ilişkin farklı hiçbir durum mevcut değilse; örneğin belirli bir (S,G)

durumu için (*,G) ve (S,G,rpt) durumu mevcut değilse oluşturulan liste anlık liste

olarak isimlendirilmektedir. Diğer durumlarda oluşturulan listelere dolaylı (inherited)

liste denmektedir. Bu listelerin oluşturulmasında yerel üyelerin istekleri, aşağıakım

yönlendiricilerinden gelen katılım veya budama istekleri ve kaynağa doğru olan en

yakın arabağdaşımın hangisi olduğu önemlidir.

Çok hedefli iletim paketleri iletilirken, paketin geldiği arabağdaşım, kaynağın IP

adresi (S), grubun IP adresi (G), RP’nin IP adresi, S kaynağına doğru olan en kısa

yol üzerindeki ilk adım komşu yönlendiricisi ve RP’ye doğru olan en kısa yol

üzerindeki ilk adım komşu yönlendiricisi göz önünde bulundurulmaktadır. S

kaynağından gelen bir paketin hedefi G grubu olduğunda, iletimi için ilk olarak S

kaynağının yönlendiriciye doğrudan bağlı bir şebeke içerisinde olup olmadığı kontrol

edilmektedir. Kaynak yönlendiriciye doğrudan bağlı ise, (S,G) için olan bağlantıyı

canlı tutma zamanlayıcısı başlatılmaktadır. Daha sonra SPT bitinin hangi durumda

olacağına karar verilmektedir. RP ağacından kaynak ağacına geçilirken yukarıakım

57

(S,G) durumu oluşumu sırasında belirli bir zaman geçtiği için iletimin (*,*,RP)/(*,G)

durumuna göre mi yoksa (S,G) durumuna göre mi yapılacağı trafiğin kesilmemesi

açısından önemlidir. SPT biti, S kaynağından gelen paket, doğru yukarıakım

arabağdaşımından gelmişse ve uygun (S,G) katılım durumu mevcut ise aşağıdaki

koşulların herhangi biri sağlandığı takdirde ayarlanmaktadır.

1. Kaynak, yönlendiriciye doğrudan bağlı bir şebekede bulunuyorsa.

2. S kaynağına doğru olan RPF arabağdaşımı (S kaynağına doğru olan en

kısa yol arabağdaşımı) RP’ye doğru olan RPF arabağdaşımından farklı ise

(ki bu durum SPT’nin tamamlandığını göstermektedir.).

3. Hiçbir alıcı, RP ağacını kullanmak istemiyorsa.

4. İlk adım (S,G) komşusu, ilk adım (*,G) komşusu ile aynı ise (ki bu

durumda yönlendirici SPT’nin tamamlanıp tamamlanmadığını hiçbir

zaman anlayamayacağı için vakit kaybetmeden SPT’ye geçmelidir.)

SPT biti, hiçbir (S,G) katılım durumu kalmadığı zaman otomatik olarak

sıfırlanmaktadır. SPT bitinin durumu hesaplandıktan sonra aşağıakım arabağdaşım

listesi tekrar doldurulmak için sıfırlanmaktadır. S kaynağından gelen paket, RPF

arabağdaşımından geliyorsa ve ilgili yukarıakım yönlendiricisi kaynağa özgü ağaca

katılmış ise aşağıakım arabağdaşım listesi dolaylı (S,G) arabağdaşım listesine göre

doldurulmaktadır. Oluşturulan liste boş ise bağlantıyı canlı tutma zamanlayıcısı

tekrar başlatılmaktadır. İlgili yukarıakım yönlendiricisi kaynağa özgü ağaca

katılmamış ise ve SPT biti sıfır ise aşağıakım arabağdaşım listesi dolaylı (S,G,rpt)

arabağdaşım listesine göre doldurulmaktadır. Buna ek olarak kaynağa özgü ağaca

geçmenin uygun olup olmayacağı araştırılmaktadır. Bunun için, G grubuna yollanan

trafiği almak isteyen alıcıların bir listesi oluşturulmakta ve S kaynağından trafik

almak istemeyen alıcılar bu listeden çıkartılmaktadır. Daha sonra bu listeye sadece S

kaynağından G grubuna doğru olan trafiği almak isteyenler eklenmektedir. Sonuç

liste boş değilse, kaynağa özgü ağaca geçiş yapılabilmektedir. Fakat bu geçiş sadece

bu koşulla belirlenmemekte daha çok yönetimsel bir seçim olmaktadır. PIM-SM

protokolünde son adım yönlendiricileri öncelikle RP ağacına üye olmakta, trafik

akışı sağlandıktan sonra isteğe bağlı olarak kaynağa özgü ağaca geçilebilmektedir.

Eğer yukarıdaki koşullardan ikisinin de sağlanmadığı durumlarda RPF testi başarısız

olmaktadır. Bu noktadan sonra, SPT biti ayarlanmış ise ve S kaynağından gelen

paketin alındığı arabağdaşım dolaylı (S,G) arabağdaşım listesinde içerisinde yer

58

alıyor ise paketin geldiği arabağdaşımdan PIM (S,G) iddia mesajı yollanmaktadır.

Aksi halde SPT biti sıfır ise ve paketin geldiği arabağdaşım dolaylı (S,G,rpt)

arabağdaşım listesi içerisinde yer alıyor ise, paketin geldiği arabağdaşımdan PIM

(*,G) iddia mesajı yollanmaktadır. Son olarak, aşağıakım listesinden paketin geldiği

arabağdaşım çıkartılmakta ve gelen paket bu liste üzerinden iletilmektedir.

Ethernet gibi çoklu erişim şebekelerinde birden fazla yönlendirici olabilmektedir. Bu

tür durumlarda o şebeke üzerinde bulunan sistemlerin çok hedefli iletim

ihtiyaçlarının karşılanması için bu yönlendiricilerden bir tanesinin seçilmesi

gerekmektedir. Seçilen bu yönlendiriciye seçilmiş yönlendirici, DR denmektedir.

PIM-SM protokolünde, DR seçimi sadece çoklu erişim şebekeleriyle sınırlı kalmayıp

noktadan noktaya iletim kullanılmakta olan şebekeler için de zorunlu kılınmıştır. DR

seçim işlemleri HELLO mesajları kullanılarak yapılmaktadır. HELLO mesajları, DR

seçimine ek olarak seçenek yeteneklerinin değiş tokuşu için kullanılmaktadır.

HELLO mesajları, komşu yönlendiricilerin keşfedilmesi ve seçenek bilgilerinin

öğrenilmesi için periyodik olarak PIM yeteneği aktif olan bütün arabağdaşımlardan

yollanmaktadır. Bu mesajlar “bütün PIM yönlendiricileri” çok hedefli iletim grubuna

iletilmektedir. Bu gurubun IP adresi IANA tarafından 224.0.0.13 olarak

belirlenmiştir [8]. Mesajların periyodik olarak gönderilebilmesi için her arabağdaşım

için bir zamanlayıcı kullanılmaktadır. Yönlendiriciler HELLO mesajlarıyla

öğrenmedikleri komşu yönlendiricilerden diğer PIM mesajlarını kabul etmemektedir.

Mesaj içerisinde bulunabilecek seçenekler aşağıda sıralanmaktadır.

1. DR Seçim Önceliği: Bu seçenek sayesinde sistem yöneticileri, DR seçim

işlemini etkileyebilmekte ve istenen yönlendiricinin DR olarak

seçilmesine sebep olmaktadır.

2. Kuşak Kimlik Tanıtıcısı (Generation ID): GenID, PIM iletimi her

başlatıldığında tekrar oluşturulan 32 bitlik rastlantısal bir değerdir.

Beklenenden farklı bir GenID değerini içeren bir HELLO mesajı

alındığında eski bilgiler silinerek bu mesajdaki bilgiler kullanılmaya

başlanmaktadır.

3. LAN Budama Gecikmesi: Bu seçenek, çoklu erişim şebekelerine atılan

bütün HELLO mesajlarında var olmak zorundadır. Bu seçenek sayesinde

yönlendiriciler, iletim gecikmesi ve bastırma aralığı için var sayılanın

dışındaki değerlerin kullanılabileceğini belirtmektedir.

59

4. Arabağdaşım Adres Listesi: Bu seçenek sayesinde ilgili arabağdaşıma

bağlanmış olan ikincil IP adresleri listelenmektedir.

DR’ın seçilme işlemi sırasında, PIM HELLO mesajlarının içerisindeki bilgiler

kullanılmaktadır. O şebeke içerisinde bulunan bütün yönlendiriciler için DR öncelik

bilgisi tanımlı ise önceliği en yüksek olan yönlendirici DR olarak seçilmektedir.

Öncelik bilgisi bir yönlendiricide dahi tanımlı olmadığı takdirde yönlendiricilerin

birincil adresleri karşılaştırılmakta ve en yüksek adrese haiz olan yönlendirici DR

olarak seçilmektedir.

Şebeke içerisindeki DR, yerel kaynaklardan aldığı çok hedefli iletim trafiğini RP’ye

doğru zarflayarak göndermektedir. O gruba ait zarflama işlemi, RP’den PIM

kaydolmayı durdur mesajı gelmesine kadar devam etmektedir.

KatılımKatılım

Bekliyor

Bilgi Yok Budama

RP değişti. [Kaydolma

tünelini güncelle.]

“BulutKaydolma(S,G)”

yanlış. [Kaydolma

tünelini kaldır.]

RP‟den kaydolma durduması

mesajı alındı. [Kaydolma tünelini

kaldır.] [Kaydolma durdurma

zamanlayıcısını başlat.]

Kaydolma durdurma

zamanlayıcısı doldu.

[Kaydolma tünelini ekle.]

RP değişti. [Kaydolma tünelini

ekle.] [Kaydolma durdurma

zamanlayıcısını durdur.]

RP‟den kaydolma

durdurması mesajı alındı.

[Kaydolma durdurması

zamanlayıcısını başlat.]

Kaydolma durdurması

zamanlayıcısı doldu.

[Kaydolma durdurması

zamanlayıcısını başlat.] [Boş

kaydolma mesajı yolla.]

“BulutKaydolma(S,G)” yanlış.

[Kaydolma tünelini kaldır.]

“BulutKaydolma(S,G)” yanlış.

[Kaydolma tünelini kaldır.]

RP değişti. [Kaydolma tünelini

ekle.] [Kaydolma durdurması

zamanlayıcısını durdur.]

“BulutKaydolma(S,G)”

doğru. [Kaydolma

tünelini ekle.]

Şekil 3.2 – PIM kaydolma durum diyagramı

DR, bu mesajı aldıktan sonra sarmalamayı hemen kesmemekte ve bir kaydolma

durdurma zamanlayıcısını başlatmaktadır. Bu zamanlayıcının bitimine doğru RP’ye

PIM boş kaydolma mesajı yollanmakta ve bu sayede RP, sarmalanmanın

durdurulacağından haberdar edilmektedir. Kaydolma mesajlarına ilişkin durum

diyagramı şekil 3.2’de verilmektedir. Kaydolma durumları sadece doğrudan bağlı

60

olan şebekelerde bulunan kaynaklar için tutulmaktadır. Diyagramda bulunan

kaydolma tüneli, RP’ye doğru sarmalama için kullanılmakta olan farazi bir

arabağdaşımdır. Katılım durumu, kaydolma tünelinin RP ile DR arasında kurulduğu

anlamına gelmektedir. Budama durumu, kaydolma durdurması mesajları sonucunda

tünelin budanması durumudur. Kaydolma bekliyor durumu, DR’ın budanmış bir

tüneli tekrar eklemek istediğini ifade etmektedir. Bilgi yok durumu ise başlangıç

durumudur. Ayrıca yönlendiriciler, DR olmadıkları zaman bilgi yok durumunda

beklemektedir. “BulutKaydolma(S,G)” işlevinin doğru ve yanlış olmak üzere iki

sonucu mevcuttur. Sonuç, yönlendirici S kaynağının bulunduğu şebekede DR ise,

(S,G) için bağlantıyı canlı tutma zamanlayıcısı çalışmakta ise veya S o

yönlendiriciye doğrudan olarak bağlı bir şebekede ise doğru olmaktadır. Bu üç

koşuldan herhangi biri sağlanmadığı sürece işlevin sonucu yanlış olmaktadır.

PIM katılım/budama mesajları, grup listesini ve bu gruplara ilişkin katılan veya

budanan kaynakları taşımaktadır. Liste içerisindeki her kaynak ayrı ayrı ele

alınmaktadır. (*,G) katılım ve budamaları, (*,G) ve (S,G,rpt) aşağıakım durumlarına

etkirken; (*,*,RP), (S,G) ve (S,G,rpt) katılım ve budamaları sadece kendilerine

ilişkin aşağıakım durumlarını değiştirebilmektedir. Eğer mesajın hedefi farklı bir

yönlendirici ise bütün yukarıakım durumları gelen mesaja göre değişebilmektedir.

Alınan (*,*,RP) katılım/budama mesajına ilişkin durum diyagramı şekil 3.3’te

gösterilmektedir. Durumlar her arabağdaşım için ayrı ayrı tutulmaktadır.

Şekil 3.3’teki durum diyagramına, bilgi yok durumunda hiçbir zamanlayıcı etkin

değildir. Katılım durumunda, yönlendirici o arabağdaşım üzerinden (*,*,RP)

ifadesindeki RP’den gelen bütün trafiği göndermektedir. (*,*,RP) katılım mesajı

geldiğinde son kullanma (expiry time, ET) başlatılmaktadır. Fakat bu trafiğe,

(S,G,rpt) budama bilgisinde yer alan kaynaklar dahil edilmemektedir. Bir başka

istisna ise yönlendiricinin, o arabağdaşıma doğrudan bağlı şebeke için iddia

kaybetmesi durumudur. Budama bekliyor durumu ise o arabağdaşımdan bir budama

mesajı alındığını göstermektedir. Bu durumda yönlendirici, aynı arabağdaşımı

kullanan diğer yönlendiricilerden herhangi birinin, budama isteğini geçersiz kılma

mesajı göndermesi için beklemektedir.

61

Katılım

Budama

BekliyorBilgi Yok

(*,*,RP) katılım mesajı alındı.

[ET‟yi baştan başlat.]

(*,*,RP) budama mesajı alındı.

[PPTyi başlat.]ET doldu.

(*,*,RP) katılım

mesajı alındı.

[ET‟yi başlat.]

(*,*,RP) katılım

mesajı alındı.

[ET‟yi baştan başlat.]

[PPT‟yi iptal et.](*,*,RP) budama

mesajı alındı.

(*,*,RP) budama

mesajı alındı.

PPT doldu. [Budama

yankı mesajı yolla.]

ET doldu.

Şekil 3.3 – (*,*,RP) katılım/budama aşağıakım durum diyagramı

Budama bekleme zamanlayıcısı (Prune Pending Timer, PPT) kadar süre beklendikten

sonra budama istemi işleme koyulmakta ve bilgi yok durumuna geçiş yapılmaktadır.

Budama yankı mesajı, budama işlemi gerçekleştirildikten sonra yukarıakım

yönlendiricisi tarafından gönderilen ve sağlamlığın arttırılmasına yönelik olan bir

mekanizmadır.

(*,G) ve (S,G) katılım/budama mesajlarına ilişkin durum diyagramı (*,*,RP)

katılım/durum diyagramıyla büyük benzerlik göstermektedir. Tek fark katılım ve

budama mesajlarının (*,*,RP) tarzında değil (*,G) veya (S,G) tarzında olmasıdır.

(*,G) veya (S,G) katılım/budama mesajı alındığında öncelikle mesaj içerisindeki RP

bilgisinin doğruluğu kontrol edilmektedir. Yönlendirici BSR’dan [39] aldığı bilgileri

mesajdaki bilgilerle karşılaştırmakta ve uyuşmayan RP mesajları işlenmemektedir.

BSR bilgisinin mevcut olmadığı durumlarda, mesaj içerisinde bulunana RP bilgisinin

kullanımına izin verilmektedir.

(S,G,rpt) katılım/budama mesajları için durum diyagramı şekil 3.4’te verilmektedir.

Diyagramda beş durum bulunmaktadır. Bilgi yok durumunda, ilgili herhangi bir

(S,G,rpt) bilgisi mevcut değildir ve hiçbir zamanlayıcı çalışmamaktadır. Budama

durumunda, arabağdaşımda (*,G) iletim durumu mevcut olsa bile S kaynağından G

grubuna giden trafik o arabağdaşımdan iletilmemektedir. Budama bekliyor

durumunda ise aşağıakım komşularından birinden budama mesajı alınmış ve

diğerlerinden geçersiz kılma mesajı beklenmektedir. Alınan katılım/budama

62

mesajları sırayla işlendiğinden ilk olarak karşılaşılan (*,G) katılım isteği sonucunda

geçici budama durumuna geçilmektedir. Daha sonra mesajda ilerleyen isteklerde

herhangi bir (S,G,rpt) budama isteğiyle karşılaşılırsa budama durumuna geri

dönülmektedir. Böyle bir istekle karşılaşılmadığı zaman bilgi yok durumuna

dönülmektedir. Geçici budama bekliyor durumu ise alınan mesajdaki katılım budama

istekleri işlenirken karışıklığın engellenmesi amacıyla budama bekliyor durumu için

oluşturulmuştur.

Geçici

Budama

Bekliyot

(*,G) katılım

isteği alındı.

Budama

Bekliyor

Budama

Bilgi Yok

Geçici

Budama

(S,P,rtp) budama isteği

alındı. [ET‟yi baştan başlat.]

G‟ye ilişkin mesajın

sonuna gelindi.

(S,G,rpt) budama

isteği alındı.

PP zamanlayıcısı

doldu.

(S,G,rpt) budama

isteği alındı. [ET‟yi

baştan başlat.]

(S,G,rpt) katılım

isteği alındı.

(S,G,rpt) budama isteği

alındı. [ET‟yi başlat.]

[PPT‟yi başlat.]

(S,G,rpt) katılım

isteği alındı.

Mesaj sonuna

ulaşıldı.

(S,G,rpt) katılım

isteği alındı.

ET doldu.

(*,G) katılım

isteği alındı.

(S,G,rpt) katılım

isteği alındı. [ET‟yi

baştan başlat.]

Şekil 3.4 – (S,G,rpt) katılım/budama aşağıakım durum diyagramı

(*,G) budama veya (*,*,RP) katılım mesajının alınması aşağıakım (S,G,rpt)

durumunu etkilemeyecektir. (*,G) katılım mesajı yollamış ve daha sonra (S,G,rpt)

budama mesajı ile S kaynağından G grubuna giden trafiği istememiş olan bir

yönlendirici, S kaynağından gelen trafiği tekrar istediği takdirde (S,G,rpt) katılım

mesajı yollamaktadır.

Yönlendiriciler, RP’ye doğru olan yukarıakım komşularına, periyodik olarak her

arabağdaşım için ayrı ayrı tutulmakta olan (*,*,RP) aşağıakım durumlarına ilişkin

katılım mesajları yollamaktadır. Yukarıakım (*,*,RP) katılım mesajı yollamak

63

isteyen yönlendiriciler, yukarıakım arabağdaşımlarındaki mesajlara dikkat etmek

durumundadır. Yukarıakım arabağdaşımından duyulan bir (*,*,RP) katılım mesajı

yönlendiricinin kendi katılım mesajını bastırmasına sebep olmaktadır. Aynı şekilde

(*,*,RP) budama mesajı, (*,*,RP) durumu olan yönlendiricinin ivedi olarak geçersiz

kılma mesajı yollamasına neden olmaktadır. Buna ek olarak yönlendirici, yukarıakım

komşusunun Gen ID’sinin değiştiğini fark ettiği zaman (Ki bu, o yukarıakım

komşusunun bütün durumlarını kaybettiği anlamına gelmektedir.) GenID’si değişen

yönlendiriciye ivedi olarak (*,*,RP) katılım mesajı yollamak durumundadır. MRIB

içerisinde meydana gelen bir değişiklik sonucu RP’ye doğru olan bir sonraki adım

değiştiğinde yönlendirici eski adıma doğru bir budama mesajı ve yeni adıma doğru

bir katılım mesajı göndermektedir. (*,G) ve (S,G) katılım/budama mesajlarının

yukarıakım komşularına gönderimi de benzer şekilde yapılmaktadır. Yönlendiriciler

aşağıakımdan aldıkları (*,G) ve (S,G) katılım/budama mesajlarını değerlendirerek

yukarıakıma ilgili katılım/budama mesajlarını yollamaktadır. Mesajların ilgili

yukarıakım yönlendiricisine yollanmasından önce diğer yönlendiricilerden aynı

mesaj duyulduğu takdirde mesaj iptal edilmektedir. (*,G) ve ya (S,G) katılım durumu

mevcut olan bir yönlendirici, trafiğin geldiği yukarıakım yönlendiricisine başka bir

yönlendirici tarafından yollanan bir budama mesajı duyduğu takdirde budama

isteğini geçersiz kılmak için çok az bir gecikmeden sonra katılım mesajı

yollamaktadır. İddia sonucu yukarıakım yönlendiricisi değiştiği zaman yeni

yukarıakım yönlendiricisinin durumlarını güncellemesi için ilgili katılım mesajı ivedi

şekilde yollanmaktadır. MRIB değişimi sonucu, RP’ye doğru veya kaynağa doğru ilk

adım yönlendiricisinin değiştiği durumlarda, eski yönlendiriciye budama mesajı, yeni

yönlendiriciye ise katılım mesajı yollanmaktadır.

Yukarıakıma yollanan (S,G,rpt) mesajları periyodik ve tetiklenmiş olmak üzere iki

farklı şekilde yollanmaktadır. Periyodik yollanan (S,G,rpt) mesajları (*,G) katılım

mesajlarına istinaden yollanmaktadır. Burada amaç (*,G) katılımını gerçekleştirmek

ve bunun yanında S kaynağından gelen trafiğin istenmediğini belirtmektir. (*,G)

katılım mesajı yollanmak istendiğinde bütün (S,G) durumları incelenmekte ve hangi

kaynaklar için (S,G,rpt) budama mesajı yollanması gerektiğine karar verilmektedir.

Eğer (S,G) trafiği SPT üzerinden geliyor ise ve RPT ile SPT yukarıakım komşusu

farklı ise (S,G,rpt) budama isteği mesaja katılmaktadır. Eğer dolaylı (S,G,rpt)

arabağdaşım listesi boş ise, bütün (*,G) arabağdaşımlarının ilgili (S,G) için RP

64

ağacından budanmış olduğu anlaşılmaktadır. Bu olay sonucunda (S,G,rpt) budama

isteği mesaja katılmaktadır. Budama isteğinin mesaja katıldığı bir başka durum ise,

trafik RP ağacı üzerinde akmakta iken bir (S,G) iddiası sonucunda kaynak ağacı RPF

komşusunun değişmesidir. Yönlendiricide (*,*,RP) veya (*,G) katılım durumu

mevcut iken aynı yukarıakım komşusunun hizmet verdiği diğer yönlendiriciler, S

kaynağını RP ağacından budamak istediği takdirde (S,G,rpt) katılım mesajları

yollanmakta ve bu sayede budama işlemi geçersiz kılınmaktadır.

Tetiklenmiş (S,P,rpt) budama istekleri yönlendiricilerde (*,G) durumu olmasa dahi

yollanabilmektedir. Bunun nedeni (*,*,RP) davranışının optimize edilmemiş

olmasıdır [33]. (*,*,RP) katılım mesajının alımı, o arabağdaşımdaki (S,P,rpt) budama

durumunu iptal etmemektedir. (S,P,rpt) durumunun iptal edilmesi için (*,G) katılım

isteğinin alınması gerekmektedir. Aynı şekilde (*,*,RP) katılım durumu olan bir

arabağdaşımdan (*,G) budama isteği alınması G grubuna gelen trafiğin kesilmesine

sebep olmamaktadır. Bunun nedeni (*,G) budama isteklerinin kullanım amacının

sadece (*,G) katılım durumlarını iptal etmek olmasıdır. Özetle (*,*,RP) durum

işlevleri (S,G) ve (*,G) mekanizmalarından daha üst seviyede çalışmakta ve

dolayısıyla (*,*,RP) katılım ve budama mesajları diğer durumları etkilememektedir.

Netice olarak (*,*,RP) durumunda (S,G) trafiğinin alınmaması için (S,G,rpt) budama

isteği kullanılması zorunludur. Yukarıda anlatılanlar, (*,G) durumu olmadan

(S,G,rpt) budama isteklerinin yollanabilmesini açıklamaktadır. Protokol

spesifikasyonunda (*,*,RP) iddia mesajları tanımlı olmadığından, bu iş için (*,G)

iddia mesajları kullanılmaktadır. Yukarıakım yönlendiricileri arasında bir iddia

olduğu zaman kazanan yönlendiricide (*,*,RP) durumu veya (*,G) durumu olup

olmadığı bilinmemektedir. Bu sebepten dolayı (S,G,rpt) budama istekleri (*,G)’nin

RPF komşusuna gönderilmektedir. (*,*,RP) ağacı içerisinden S kaynağının yarattığı

trafiğin alımının durdurulması için karmaşık geçersiz kılma kuralları yerine her (S,G)

budama isteğine karşı bir (*,G) katılım isteği gönderilmesi kararlaştırılmıştır.

Ethernet gibi çoklu erişim şebekelerinde, aynı paket için birden fazla yukarıakım

yönlendiricisinin iletim durumu mevcut olabilmektedir. Bu gibi durumlarda paketler

çifter çifter gelmektedir. PIM spesifikasyonunda, bu sorunun önceden fark edilip

önlem alınması için herhangi bir mekanizma bulunmamaktadır. Bunun yerine

paketler çifter çifter gelmeye başladıktan sonra, gereksiz paket iletiminin önlenmesi

için yukarıakım yönlendiricileri arasında bir seçim mekanizması oluşturulmuştur. Bu

65

seçim PIM iddia (assert) mesajları sayesinde gerçekleştirilmektedir. İddia mesajları,

ayrıca aşağıakım yönlendiricilerine de yollanmaktadır. Burada amaç, iddiayı kazanan

yukarıakım yönlendiricisi belli olduktan sonra, iletimin kesilmemesi için aşağıakım

yönlendiricilerinin geçerli çok hedefli iletim durumlarını iddiayı kazanan yukarıakım

yönlendiricisine bildirmelerinin sağlanmasıdır. Yönlendiricilerde, bütün

arabağdaşımlar için, (*,G) ve (S,G) olmak üzere iki farklı iddia durum makinası

bulunmaktadır. Bu durum makinaları için bilgi yok, iddiayı kazandım ve iddiayı

kaybettim olmak üzere üç durum mevcuttur. İddia mesajları işlenirken (S,G) durum

makinasını değiştiren istekler önceliklendirilmektedir. (*,G) durumu, ancak ilgili S

kaynağı ve G grubu için (S,G) makinası bilgi yok durumunda iken değişebilmektedir.

İddiayı kazananın belirlenmesi için sırasıyla RPT biti, metrik tercihi ve rota metriği

karşılaştırılmaktadır. İddiayı, ilk düşük değere sahip olan yönlendirici

kazanmaktadır. Üç değerin de eşit olduğu durumda, yönlendiricilerin IP adresine

bakılmakta ve yüksek olan IP adresi eşitliği bozmaktadır. Burada RPT biti, trafik RP

ağacından geliyorsa 1, SP ağacından geliyorsa 0 değerini almaktadır. Metrik tercihi

ve rota metriği MRIB içerisinden bulunmakta ve trafik RP ağacından alınmakta ise

RP’nin tek hedefli iletim bilgilerini, trafik kaynak ağacından akmakta ise S’in tek

hedefli iletim bilgilerini göstermektedir.

İddiayı kazanan yönlendirici, daha sonra herhangi bir nedenden dolayı iddianın

gerçekleştirildiği durumu sildiği zaman, belirli bir zaman aşımı sonrasında

yönlendiriciler üzerindeki iletim durumları normale dönmektedir. Zaman aşımı

süresinin beklenmeden harekete geçilebilmesi için iddia iptal mesajları

kullanılmaktadır. Aslında, bu mesajlar sonsuz metriğe sahip olan RPT iddia

mesajlarıdır. İddia iptal mesajları alındığı zaman ilgili iletim durumu mevcut olan

yönlendiriciler, otomatik olarak kendi iddia mesajlarını yollamaktadır. Bu

mekanizma, o şebekedeki alıcılar ve aşağıakım alıcıları için oluşturulmuş bir

optimizasyondur. Bu sayede zaman aşımı süresi kadar beklenmemektedir. (*,G)

iddiasını kazanan yönlendirici iddiayı kazandıktan sonra sadece (*,G) durumu için o

şebekenin yerel DR’ı olarak görev yapmaktadır. Aynı durum (S,G) iddiası için de

geçerlidir.

Etki alanının dışındaki kaynakların iç taraftaki alıcılara veya iç taraftaki kaynakların

dış taraftaki alıcılara trafik yollayabilmesi için sınırlarda bulunan yönlendiricilerin

PIM-SM dışındaki bir çok hedefli iletim yönlendirme protokolü daha kullanması

66

gerekmektedir. Komşu etki alanlarında çok hedefli iletimin yönlendirilmesi için

PIM-SM dışındaki bir protokolün kullanımda olabileceği unutulmamalıdır. Sınırda

bulunan ve PIM-SM protokolüne ek olarak bir başka yönlendirme protokolü konuşan

yönlendiricilere, PIM çok hedefli iletim sınır yönlendiricisi (PIM multicast border

router, PMBR) denmektedir. Temel olarak PMBR’ın iki görevi vardır. Bu görevler,

harici kaynaklardan gelen trafiğin dahili alıcılara iletimi ve dahili kaynaklardan gelen

trafiğin harici alıcılara iletimidir. Normal operasyonda harici kaynaklardan gelen

trafik, PIM-SM arabağdaşımlarından birinden gelmediği için iletimle ilgili herhangi

bir işlem yapılmamaktadır. Trafiğin aktarılması için PIM kaydolma mesajlarındaki

harici biti ayarlanmakta ve kaynak PMBR’a doğrudan bağlı bir şebekede gibi

düşünülmektedir. Dahili kaynaklardan gelen trafiğin harici alıcılara iletimi için iki

farklı yol izlenmektedir. Bunlardan ilki, PMBR’ın joker alıcısı gibi davranmasıdır.

Bu yöntemde PBMR etki alanı içerisindeki bütün RP’lere doğru (*,*,RP) katılım

mesajları göndermek suretiyle bütün gruplara üye olmakta ve harici arabağdaşım için

DR görevi görmektedir. Bu şekilde, istenen trafik etki alanı dışına iletilebilmektedir.

Ayrıca gerek görüldüğünde SP ağacına geçilebilmektedir. Diğer yöntem ise (*,*,RP)

katılımları yerine, sadece harici alıcıların almak istedikleri trafiğin iç taraftan

alınmasıdır. PMBR, harici alıcılara doğru bakan arabağdaşım için DR görevi

görmekte ve alıcıların o arabağdaşıma doğrudan bağlı oldukları düşünülmektedir.

Böylece PMBR, diğer etki alanlarından gelen istekleri doğrudan bağlı olan

alıcılardan geliyormuş gibi hareket etmektedir. Çok hedefli iletim yönlendirme

protokolleri arasındaki birlikte çalışma prensipleri 2715 numaralı RFC [34] ile

belirlenmiştir. PIM-SM protokolü, bu prensiplere uymakta ve normal işleyişinde bu

prensiplere uyan yönlendirme protokolleri ile haberleşeceği varsayılmaktadır. Fakat

MSDP [35] gibi bu duruma uymayan protokollerle birlikte çalışılabilirliğin

sağlanabilmesi için PMBR’lara ihtiyaç duyulmamaktadır. Bunun nedeni ise (S,G)

katılım mesajlarının etki alanlarının sınırlarından geçebiliyor olmasıdır. Genel olarak

PMBR’lar 2715 numaralı RFC ışığında hazırlanmıştır ve diğer 2715 uyumlu

yönlendirme protokolleriyle birlikte çalışabilmektedir.

Çok hedefli iletim yönlendirmesinin tutarlı olabilmesi için, aynı etki alanı

içerisindeki bütün PIM yönlendiricilerinin hedef gruplar için belirledikleri RP’lerin

aynı olması gerekmektedir. Aksi halde tek bir grup için birden fazla RP hizmet

verecek ve yönlendirme tutarlı olmayacaktır. Bunun için halihazırda üç farklı yol

67

belirlenmiştir. İlk yol, hedef grup adresi ile RP adreslerinin eşleştirilmesinin sistem

yöneticileri tarafından elle yapılmasıdır. Bu yöntemde, bütün PIM yönlendiricilerinin

elle yapılandırılması gerekmektedir. Buna ek olarak statik bir yapı oluşacağı için

herhangi bir RP’de sorun çıktığı zaman RP adreslerinin tekrar dağıtımı çok zor

olmaktadır. İkinci yöntem, Cisco Systems tarafından geliştirilen Auto-RP

mekanizmasıdır. Bu mekanizmada, grup adresi ile RP ilişkilendirmesi PIM-DM [19]

protokolü kullanılarak merkezi bir noktadan dağıtılmaktadır. Bu mekanizmanın

dezavantajı PIM-SM ile birlikte PIM-DM protokolünün de kullanılması

zorunluluğudur. Üçüncü ve en çok tercih edilen yöntem ise bilgilerin BSR [33]

kullanılarak dağıtılmasıdır. Etki alanı içerisinde bulunan bütün PIM yönlendiricileri

adaylıklarını BSR’a bildirmektedir. BSR, aday yönlendiriciler arasından

yönlendiricileri seçerek bir RP kümesi oluşturmakta ve daha sonra bu kümeyi bütün

etki alanına dağıtmaktadır. PIM-SM için hangi yöntemin kullanıldığı önemli değildir.

Önemli olan tek husus, etki alanı içerisindeki bütün yönlendiricilerin gruplar için

aynı RP’leri kullanmasıdır. PIM yönlendiricileri, yukarıdaki yöntemlerden herhangi

biri sayesinde grup – RP ilişkilendirmelerini periyodik olarak edinmektedir.

İlişkilendirmeler, grup adresi ve adres maskesini tek bir RP’ye eşlemektedir. Böylece

bir grup kümesine tek bir RP hizmet etmektedir. Buna ek olarak, istendiğinde

eşlemelere öncelik atanabilmektedir. Belirli bir grup için birden fazla eşleme

gönderilmesine izin verilmektedir. Gruplar RP’lere eşlenirken, öncelikle grup

maskeleri kontrol edilmekte ve en uzun maskeye haiz olan RP listesi seçilmektedir.

Daha sonra en yüksek önceliğe sahip olan RP’ler bulunmakta ve diğerleri listeden

çıkarılmaktadır. Geriye birden fazla RP varlığının kaldığı durumlarda, özet işlevi

kullanılarak her RP için bir değer bulunmakta ve en yüksek değere haiz olan RP

seçilmektedir. Eşitliğin bozulmadığı durumlarda, en yüksek IP adresine sahip olan

RP kullanılmaktadır. Özet işlevi, girdi olarak grup adresini ve aday RP adreslerini

almakta; çıktı olarak tek bir RP adresi sunmaktadır. İlk olarak ilgili RP adresleri için

aşağıdaki değer hesaplanmaktadır;

Deger(G,M,C(i)) = (1103515245 * ((1103515245 * (G&M)+12345) XOR C(i)) + 12345) mod 231

Burada C(i), RP adresini, M ise BSR mesajındaki grup maskesini ifade etmektedir.

BSR kullanılmadığı durumlarda maske bilgisi dağıtılmıyorsa ilk 30 bit “1” olarak

alınmaktadır. G ise grup adresini temsil etmektedir. O grup için, değer işlevinin

68

sonucu en yüksek çıkan RP seçilmektedir. Değer işlevi birden fazla yönlendirici için

aynı çıkmış ise, en yüksek IP adresine haiz olan RP eşitliği bozmaktadır.

PIM-SM spesifikasyonuna ait kontrol mesajlarında kullanılan IP protokol numarası

103’tür. Mesajlar kaydolma mesajlarında olduğu gibi tek hedefli veya

katılım/budama mesajlarında olduğu gibi çok hedefli olarak gönderilmektedir. Çok

hedefli olarak gönderilen kontrol mesajlarında IP TTL değeri olarak 1

kullanılmaktadır. Hedef grup adresi olarak IANA tarafından atanan “bütün PIM

yönlendiricileri grubu” (224.0.0.13) kullanılmaktadır [8]. Tek hedefli olarak iletilen

mesajlarda kaynak adresi olarak bütün etki alanından erişilebilen bir adres, çok

hedefli olarak iletilen mesajlarda mesajın çıktığı arabağdaşım adresi bulunmaktadır.

PIM spesifikasyonunda çeşitli yerlerde pek çok zamanlayıcı kullanılmaktadır. Bu

zamanlayıcıların listesi aşağıda verilmektedir.

Her arabağdaşım başına (I);

HELLO zamanlayıcısı: HT(I)

Her komşu başına (N);

Komşu yaşam zamanlayıcısı: NLT(N,I)

Etkin her RP başına (RP);

(*,*,RP) Katılım sona ermesi zamanlayıcısı: ET(*,*,RP,I)

(*,*,RP) Budama bekliyor zamanlayıcısı: PPT(*,*,RP,I)

Her grup başına (G);

(*,G) Katılım sona ermesi zamanlayıcısı: ET(*,G,I)

(*,G) Budama bekliyor zamanlayıcısı: PPT(*,G,I)

(*,G) İddia zamanlayıcısı: AT(*,G,I)

Her kaynak başına (S);

(S,G) Katılım sona ermesi zamanlayıcısı: ET(S,G,I)

(S,G) Budama bekliyor zamanlayıcısı: PPT(S,G,I)

(S,G) iddia zamanlayıcısı: AT(S,G,I)

(S,G,rpt) budama sona ermesi zamanlayıcısı: ET(S,G,rpt,I)

(S,G,rpt) budama bekliyor zamanlayıcısı: PPT(S,G,rpt,I)

Etkin her RP için (RP);

(*,*,RP) yukarıakım katılım zamanlayıcısı: JT(*,*,RP)

Her grup için (G);

69

(*,G) yukarıakım katılım zamanlayıcısı: JT(*,G)

Her kaynak için (S);

(S,G) yukarıakım katılım zamanlayıcısı: JT(S,G;)

(S,G) bağlantıyı canlı tutma zamanlayıcısı: KAT(S,G)

(S,G,rpt) yukarıakım geçersiz kılma zamanlayıcısı: OT(S,G,rpt)

Sadece DR’larda ve iddia kazananlarda;

Her kaynak grup çifti için (S,G);

Kaydolma durdurma zamanlayıcısı: RST(S,G)

70

4. ÇOK HEDEFLĠ ĠLETĠM D SINIFI ADRES YÖNETĠMĠ

4.1. IETF Çok Hedefli Ġletim Adres Tahsis Mimarisi

Çok hedefli iletimde kullanılan D sınıfı IP adreslerinin dağıtımı ve yönetimi çok

hedefli iletim için büyük önem taşımaktadır. Çok hedefli iletim adresleri, tek hedefli

iletim adreslerine kıyasla çok daha sınırlı sayıdadır. Bu sebeple dinamik olarak

dağıtılmaları gerekmektedir. Adres yönetimi ve dağıtımı sorununun çözülebilmesi

için IETF bünyesinde MALLOC adında bir çalışma grubu oluşturulmuştur. Grubun

yöneticiliğini S. Hanna ve D. Thaler üstlenmiştir. Bu çalışma grubu, D sınıfı adres

yönetimi için bir dağıtım ve yönetim çatısı oluşturulması amacıyla çalışmalar

yapmıştır. Yapılan çalışmalar 2000 senesinde son halini alarak 2908 numaralı RFC

[36] olarak yayımlanmıştır.

Tek hedefli iletimde kullanılmakta olan adreslerde olduğu gibi, çok hedefli iletimde

kullanılmakta olan adreslerin de iki temel özelliği bulunmaktadır [36]. Bunlardan

ilki, adresin sadece o zaman dilimi içerisinde geçerli olması, bir başka deyişle yaşam

süresinin belirli olmasıdır. İkincisi ise, o adresin şebekenin hangi bölümünde geçerli

olacağını belirleyen kapsamıdır. Örneğin bir adres, bütün şebeke üzerinde geçerli

iken başka bir adres sadece belirli bir bölümünde geçerli olabilmektedir. Adres çatısı

oluşturulurken dikkat edilmesi gereken hususlar aşağıda sıralanmaktadır.

1. Sağlamlık ve hazır bulunma: Adres edinmek isteyen uygulamanın adres

tahsis isteğinin her zaman karşılanabilmesi olarak tanımlanmaktadır. Adres

talebinde bulunan her uygulamanın uygun bir adres alması sağlanmalıdır.

2. Kısa zamanda işlem (Timeliness): Adres bilgilerinin, alınan talepten hemen

sonra talep edene bildirilmesi anlamına gelmektedir. Uygulamanın işleyişini

değiştirmediği sürece ufak gecikmeler göz ardı edilmektedir.

71

3. Düşük adres çakışması olasılığı: Dağıtılan adreslerin kontrollü olarak

dağıtılması ve kullanımda olan adreslerle çakışma olasılığının çok düşük

olması anlamına gelmektediri

4. Adres uzayının bölümlere ayrılması: D sınıfı adreslerin kısıtlı sayıda olması

sebebiyle adres uzayının bölümlere ayrılması gerekmektedir. Bu işlemin

diğer bir adı da paketlemedir. Paketleme sayesinde dağıtım kolaylaşmakta;

ancak, bölümleme sonucunda ortaya çıkan alt kümelerin boyutu adres

çakışma olasılığını etkilemektedir. Alt kümelerin boyutu büyük seçildiği

zaman, adres çakışması olasılığı azalmakta; buna bağlı olarak sağlamlık ve

hazır bulunma oranı da aynı oranda azalmaktadır. Boyut küçük seçildiği

zaman durum tam tersi olmaktadır. Bu bilgiler ışığında adres çakışması ve

adreslerin hazır bulunması arasında bir tercih yapılması gerektiği

anlaşılmaktadır.

Çok hedefli adreslerin tahsisinde üç farklı yol izlenmektedir. Bu yollar; statik ayrım,

kapsama bağlı olarak ayrım ve dinamik ayrımdır. Statik ayrım, IANA tarafından

belirlenmektedir [8]. IANA spesifikasyonları sayesinde pek çok protokol için çeşitli

çok hedefli iletim grup adresleri ayrılmıştır. Bu adresler, sadece bu işlere yönelik

olarak ayrılmakta ve iyi bilinen (well-known) adresler olarak isimlendirilmektedir.

İyi bilinen adreslere örnek vermek gerekirse, 224.0.1.1 zaman eşlemesi için

kullanılan NTP protokolü için ayrılmıştır. Statik olarak ayrılan adreslerin yaşam

süreleri genel olarak sınırsızdır ve kapsamları adresten adrese farklılık

göstermektedir. Kapsama bağlı olarak ayrılan adresler 2365 numaralı RFC’de [37]

tanımlanmaktadır. Yönlendiriciler üzerindeki arabağdaşımların kapsam değerleri,

sistem yöneticileri tarafından ayarlanarak çeşitli bölgeler oluşturulmakta ve paket

adımdan adıma, arabağdaşım üzerindeki çok hedefli iletim kapsam yapılandırması

gözetilerek iletilmektedir. Kapsamların ayarlanabilmesi ve otomatik olarak

öğrenilebilmesi için çeşitli protokoller geliştirilmiştir [38,39]. Çok hedefli iletimin

doğası gereği adreslerin dinamik olarak ayrılması en iyi çözümdür. Dinamik ayrım

sayesinde, adresler istek üzerine (on-demand) ayrılmakta ve yaşam süreleri

belirlenebilmektedir. Adres tahsisinin sağlıklı yapılabilmesi için, çok hedefli iletim

uygulamalarının adres taleplerini sadece gerektiği zaman yapması ve adresleri

gerektiği kadar kullanması istenmektedir. Uygulamalar, kullandıkları adreslerin

yaşam sürelerini uzatmak için uzatma istekleri gönderebilmektedir. Bu tür istekler

72

mümkün olduğu kadar karşılanmakta, karşılanamadığı durumlarda ise yeni adreslerin

tahsis yoluna gidilmektedir. Dinamik adres ayrımı için katmanlı bir mimarı

geliştirilmiştir [36]. Katmanlar sayesinde yalıtım sağlanmakta ve farklı yönetimsel

organizasyonların birbirini etkilemeden mimari içerisinde yer alması olanaklı hale

gelmektedir. Adres tahsis mimarisi şekil 4.1’de gösterilmektedir.

Adres Önek

Koordinatörü

Adres Önek

Koordinatörü

MAAS MAAS MAAS

İstemci İstemci İstemci

Adres Önek

Koordinatörü

İstemci

İkinci katman

Birinci katman

Üçüncü katman

Şekil 4.1 – Çok hedefli iletim adres yönetim ve tahsis mimarisi

Şekilde tek bir yönetimsel organizasyon içerisindeki varlıklar gösterilmektedir. bu

varlıklar adres önek koordinatörü, çok hedefli iletim adres ayrım sunucusu (Multicast

Address Allocation Server, MAAS) [36] ve adresleri talep eden istemcilerdir.

Mimaride toplam üç farklı katman bulunmaktadır. Bu katmanlar; istemcilerle MAAS

varlıkları arasında olan ilk katman, MAAS varlıkları ve adres önek (prefix)

koordinatörleri arasında olan ikinci katman ve farklı yönetimsel organizasyonlar

arasındaki adres önek koordinatörleri arasında olan üçüncü katmandır.

İlk katman, çok hedefli iletim adres istemcileriyle bu adresleri sağlamakla yükümlü

olan sunucular arasındaki protokol ve mekanizmaları içermektedir. Sunucu, tahsis

ettiği adreslerin yaşam süresi içerisinde aynı kapsam dahilinde kullanılmayacağını

garanti etmelidir. Bu katman içerisindeki protokollere örnek olarak MADCAP [4]

mekanizmalara örnek olarak, adreslerin listelendiği bir WEB sunucusuna HTTP

erişimi gösterilebilir. Buna ek olarak, IANA tarafından belirlenen statik adres

yapılandırması da kullanılmaktadır. Bu katman için soyut bir uygulama programlama

arayüzü (API) yazılmıştır [40]. MAAS varlıkları arasındaki koordinasyonun

73

sağlanması için oluşturulmuş protokoller ve mekanizmalar, ikinci katman içerisinde

bulunmaktadır. Bu protokoller, sadece etki alanı içerisinde kullanılmaktadır. Ayrıca

bu katman içerisinde MAAS varlıklarının adres önek koordinatörleri ile iletişimde

bulunarak, hangi adres bölümlerini dağıtması gerektiği bilgilerini almasına ilişkin

mekanizmalar da bulunmaktadır. İkinci katman içerisindeki protokollere örnek

olarak Adres Ayrım Protokolü (Address Allocation Protocol, AAP) [41] verilebilir.

MAAS varlıklarının elle yapılandırılması da ayrı bir seçenektir. Değişik etki alanları

içerisindeki adres önek koordinatörleri arasındaki haberleşme üçüncü katmanda

belirlenmektedir. Bu katmanda adres bölümleri, önek koordinatörlerine

dağıtılmaktadır. Bu katman içerisinde kullanılan protokollere örnek olarak MASC

(Multicast Address-Set Claim Protokol) [42] verilebilir. Bir başka seçenek ise

ayrımın otonom sistem numarasına göre statik olarak yapılmasıdır [43].

Kapsamların yönetimsel olarak belirlendiği [37] durumlarda, MAAS varlıklarının

hangi kapsamların kullanılmakta olduğunu, kapsamların isimlerini ve adres

menzillerini öğrenmesi gerekmektedir. Kapsamların öğrenilmesi statik yapılandırma

ile veya MZAP [39] mesajlarının pasif olarak dinlenmesiyle gerçekleştirilmektedir.

Adres tahsisinin dinamik olarak yapıldığı durumlarda, MAAS varlıklarının hangi

adresleri dağıtacağı iki farklı yolla belirlenmektedir. Bu yollar kapsamların türüne

göre değişmektedir. Yönetimsel olarak belirlenmiş kapsamın ayrım alanına dahil

olan bütün topolojiyi kapsadığı durumlarda, kapsam içerisinde belirtilen adres aralığı

bütün MAAS varlıkları tarafından kullanılmaktadır. Adres çakışmalarının önlenmesi

ve dağıtımın koordinasyonu, ikinci katman protokolleri ve mekanizmaları tarafından

yürütülmektedir. Bu tür kapsamlara küçük kapsamlar denmektedir [16]. Bu

kapsamlar içerisinde belirtilen adres aralıkları bölünemez türdendir. Kapsam

içerisinde tanımlanan alanın ikinci katman protokolleri kullanılarak

yönetilemeyeceği durumlarda (Ki bu durumlar, alanın birden çok otonom sistem

içerdiği durumlardır.) üçüncü katman protokollerine ihtiyaç duyulmaktadır. Bu tür

kapsamlar büyük kapsamlar olarak isimlendirilmekte ve tanımladıkları adres

aralıkları küçük parçalara bölünebilmektedir. MAAS varlıkları, kapsam bilgilerini

MZAP mesajlarını pasif olarak dinleyerek elde etmektedir. Buna ek olarak adres

aralığının nasıl bölümleneceği ve hangi bölümün hangi otonom sistem içerisinde

kullanılacağı adres önek koordinatörleri tarafından belirlenmektedir. Dolayısıyla

74

MAAS varlıkları, hangi adres aralığının dağıtılması gerektiğini adres önek

koordinatörleri ile haberleşerek öğrenmektedir.

İkinci katmanda bulunan protokol ve mekanizmalar tarafından kullanılması için

farklı bir kapsam tanımlanmış ve ayrım kapsamı olarak isimlendirilmiştir. Bu

kapsam büyük ve bölünebilir kapsamlar için adres ayrım operasyonlarında

kullanılmaktadır. Genel olarak ayrım kapsamı sınırları, otonom sistem sınırlarıyla

örtüşmektedir. Bu genellemeye uymayan iki durum söz konusudur. İlk durum, birden

fazla çok hedefli iletim yönlendirme protokolünün kullanıldığı ve yönetimsel olarak

bölgelere ayrılmış büyük otonom sistemlerdir. Bu tür sistemlerde ayrım kapsamı,

otonom sistemlerin içerisindeki alanların sınırlarıyla aynı olmaktadır. İkinci durum

ise, otonom sistemin kendisinden daha büyük otonom sistemleri de kapsayan bir

ayrım alanı içerisinde bulunduğu durumlardır. Bu tür durumlarda otonom sistem

adres yönetimi için hizmet sağlayıcısına (hizmeti aldığı ve aynı ayrım alanı içerisinde

bulunan otonom sistem) başvurmakta ve kendi MAAS varlığını hizmet aldığı

otonom sistemin adres yönetim ve tahsis mimarisi içerisine dahil etmektedir. IANA

tarafından tanımlanan ayrım kapsamı adres uzayı, 239.251.0.0/16 şebekesinden

oluşmaktadır. Bu şebekenin dolması tehlikesine karşı 239.248.0.0/16, 239.249.0.0/16

ve 239.250.0.0/16 şebekeleri de bu iş için ayrılmış fakat asıl şebeke dolmadan

kullanılmamasına karar verilmiştir [36].

Adres tahsisi için kullanılan prosedürde ilk olarak büyük ve bölünebilen kapsamlar

için üçüncü seviye paylaşım yapılmaktadır. Her bir önek koordinatörü bir ya da

birkaç adres menzili tedarik etmektedir. Daha sonra menziller ikinci katman

protokolleri kullanılarak etki alanı içerisindeki MAAS varlıklarına aktarılmaktadır.

MAAS varlıkları, menzilleri almakta ve buna ek olarak küçük kapsamları (örneğin

MZAP protokolü sayesinde) öğrenmektedir. Adreslerin MAAS varlıkları arasındaki

koordinasyon, yine ikinci katman protokolleri ile sağlanmaktadır ve böylece bir

adresin sadece tek bir MAAS tarafından dağıtılması garanti edilmektedir. Kapsamın

belirlenmesi iki farklı şekilde yapılmaktadır. İlk yol, iyi bilinen (well-known) bir

kapsam kullanmaktır. Evrensel kapsam buna bir örnek olarak verilebilir. Diğer yol

ise kullanımda olan kapsamların öğrenilmesi ve istemcilerin seçimine bırakılmasıdır.

Öğrenme işlemi MADCAP sorguları gönderilmesi veya MZAP mesajlarının

dinlenmesi sayesinde yapılmaktadır.

75

İstemcilerin, doğru MAAS varlığı ile temasa geçmesi gerekmektedir. Uygun MAAS

varlığının seçimi, elle yapılandırma veya bir hizmet konumlandırma protokolü

kullanımı sayesinde gerçekleştirilmektedir. Hizmet konumlandırma protokollerine

örnek olarak SLP [44] verilebilir. MAAS varlıklarının belirlenmesi, buna ek olarak

birinci katman protokolleri içerisinde bulunan mekanizmalar sayesinde de

yapılabilmektedir.

İstemciler, kullanımda olan kapsam ve ilgili MAAS varlığını bulduktan sonra

kendilerine uygun bir yaşam süresi belirleyerek adres tahsis isteğinde bulunmaktadır.

Bu işlem, birinci katman protokolleri sayesinde gerçekleştirilmektedir. MAAS

varlıkları isteği aldıklarında, kullanımda olmayan bir adres seçmekte ve talep edilen

yaşam süresi ile geçerli yaşam süresini karşılaştırmaktadır. Yaşam süresinin iki

tarafın isteklerini de karşılaması gerekmektedir. Daha sonra MAAS varlıkları, tahsis

isteği için ayrılan adresin diğer MAAS varlıkları tarafından kullanılıp

kullanılmadığını öğrenmek için ikinci seviye protokolleri kullanmaktadır. Herhangi

bir çakışma tespit edildiğinde başka bir adres seçilmekte ve işlemler

tekrarlanmaktadır. Çakışma olmadığı durumda adres, uygun yaşam süresiyle birlikte

istemciye tahsis edilmektedir. Etki alanı içerisinde kullanımda olan çok hedefli iletim

adreslerinin yetmediği anlaşıldığında, önek koordinatör varlıkları üçüncü seviye

protokolleri kullanarak gerekli kapasite artırımını sağlamaktadır.

4.2. Yönetimsel Olarak BelirlenmiĢ Kapsamların Kullanımı

Yönetimsel olarak belirlenmiş kapsamlar için IANA tarafından 239.0.0.0/24 şebekesi

ayrılmıştır [8]. Kapsamların yönetimsel olarak belirlenmesi fikri ilk olarak, 1994

yılında 30. IETF konferansında [45] S. Deering ve V. Jacobson tarafından ortaya

atılmıştır. Pek çok uygulama, kapsamların belirlenebilmesi için IP TTL değerini

kullanmaktadır. Arabağdaşıma atanan TTL değerinin, iletilmek istenen paketin TTL

değerinden büyük olduğu durumlarda paket atılmaktadır. IP TTL değerinin asıl

görevi veri bloklarının şebekeler üzerindeki yaşam süresinin kısıtlanmasıdır. Bu iki

görevin IP TTL mekanizmasına yüklenmesi, kimi zaman sorunlar yaratmakta ve

yapılandırma problemlerini de beraberinde getirmektedir. Başka bir problem ise

kapsamın TTL değerine göre belirlenmesi sayesinde, “yayın ve budama” mantığına

76

göre çalışan çok hedefli iletim yönlendirme protokollerinin (örneğin DVMRP [35])

işleyişinin bozulmasıdır. Böyle bir yapıda, budama işlemi sağlıklı yapılamamaktadır.

Yönetimsel olarak belirlenmiş kapsamların iki temel özelliği bulunmaktadır. İlk

özellik, belirlenmiş kapsam içerisinde bulunan adreslere iletilen paketlerin kapsam

sınırlarını geçmemesidir. İkinci özellik ise, kapsam içerisinde kullanılan adreslerin

yerel olarak atanması ve etki alanı genelinde veya etki alanları arasında herhangi bir

koordinasyon gerektirmemesidir. Çok hedefli iletimin yönetimsel olarak belirlenmiş

kapsamlar çerçevesinde yapılabilmesi için, çok hedefli yönlendiricilerin

arabağdaşımlarında ilgili kapsamın belirlenmiş olması gerekmektedir. Bu tür

yönlendiricilere sınır yönlendiricisi denmektedir. Sınır yönlendiricileri,

arabağdaşımlarında bulunan tanımlarla eşleşen paketleri o arabağdaşımlarından

göndermemektedir. Kontrol iki yönlü yapılmaktadır. Böylece, sınır yönlendiricileri

kullanılarak kapsamın sınırları belirlenmektedir. Buna ek olarak, PIM-DM gibi

yoğun mod çok hedefli iletim yönlendirme protokolleri ile ilgili trafik, o arabağdaşım

için her zaman budanmakta ve PIM-SM gibi seyrek mod yönlendirme protokolleri

için o kapsamın yapılandırıldığı arabadaşımdan PIM katılım mesajları kabul

edilmemektedir.

[37] dökümanında iki farklı yönetimsel kapsam tanımlanmıştır. İlk kapsam IPv4

yerel kapsamı, ikincisi ise IPv4 organizasyonel yerel kapsamıdır. Yerel kapsamda

239.255.0.0/16 şebekesi kullanılmaktadır. Bu kapsam tanımlanmış en küçük

kapsamdır ve parçalara ayrılması söz konusu değildir. Yerel kapsam en küçük

kapsam olduğu için, diğer bir kapsamı kapsamamasına izin verilmemektedir. Yerel

kapsam için tahsis edilmiş adres menzili dolduğunda 239.254.0.0/16 ve

239.253.0.0/16 şebekelerinin kullanılmasına karar verilmiştir. Organizasyonel yerel

kapsam için 239.192.0.0/14 şebekesi kullanılmaktadır. Organizasyon içerisinde daha

küçük kapsamların oluşturulabilmesi için bu kapsam kullanılmakta ve

239.192.0.0/14 şebekesi parçalanmaktadır. Bu adres menzilinin bitmesi durumunda,

239.0.0.0/10, 239.64.0.0./10 ve 239.128.0.0/10 şebekelerinin kullanılmasına karar

verilmiştir. Bu iki kapsama ek olarak iki ek kapsam daha operasyonel durumdadır.

Bunlardan ilki, yerel bağlantı kapsamıdır ve 224.0.0.0/24 şebekesini içermektedir.

Bu kapsam sadece bağlantı bazında kullanılmaktadır. İkinci kapsam ise küresel

kapsamdır ve adres dağılımı pek çok alt bölümden oluşmaktadır. Bu kapsama dahil

77

olan adresler IANA tarafından belirlenmektedir [8]. Örnek olarak 224.2.0.0 -

224.2.127.253 menzili, çoklu ortam konferans aramaları için kullanılmaktadır.

4.3. GLOP Adresleme Altyapısı

GLOP adresleme altyapısı çok hedefli iletim adres yönetim sorunlarının belirli bir alt

kümesinin çözülmesi amacıyla oluşturulmuştur. IETF bünyesinde MALLOC çalışma

grubu tarafından 3180 numaralı RFC [46] olarak yayımlanan GLOP adresleme

altyapısı kaynağa özgü çok hedefli iletim haricindeki çok hedefli iletim çeşitleri için

kullanılabilmektedir. Bu altyapı için 233.0.0.0/8 şebekesi tahsis edilmektedir [8].

GLOP adresleme felsefesi, otonom sistemlerin numaralarının çok hedefli iletim

adresleri içerisine gömülmesi ve her bir otonom sistem için belirli bir çok hedefli

iletim grup adres şebekesi oluşturulmasına dayanmaktadır. IPv4 çok hedefli iletim

adreslerindeki ilk sekizli 233 olarak belirlenmiştir. İkinci sekizlide organizasyonun

otonom sistem numarası bulunmaktadır. Son sekizli ise otonom sistem içerisinde

kullanılmak üzere ayrılmıştır. GLOP adreslerinin yapısı şekil 4.2’de verilmektedir.

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Otonom Sistem Numarası233

0 1 2 3

Yerel Bitler

Şekil 4.2 – GLOP adres yapısı

GLOP adresleme yapısına örnek vermek gerekirse, otonom sistem numarası 5662

olan bir organizasyon için sistem numarası ikilik sayı sistemine çevrilmekte ve sol

taraftan 16 bite tamamlanmaktadır. Daha sonra oluşan ikili dizi 0001011000011110,

çok hedefli iletim grup adres şebekesinin ikinci ve üçüncü sekizlileri için

kullanılmakta ve ortaya 233.22.30.0/24 şebekesi çıkmaktadır. Böylece otonom

sistem numarası 5662 olan bir organizasyon için 233.22.30.0/24 şebekesi tahsis

edilmiş olmaktadır.

Internet üzerinde özel otonom sistem numaraları (64512 ila 65535 arasında olanlar)

kullanılmamaktadır. Bu numaralar Internet’e bağlı olan organizasyonlara

atanmamakta ve Internet üzerinde bir otonom sistem olarak ifade edilmemektedir. Bu

sebeple, bu menzil içerisinde düşen GLOP çok hedefli iletim adresleri Internet

78

üzerinde kullanılamamaktadır. Bu engelin kullanımı etkilememesi için bu menzil

içerisindeki adresler özel muamele görmektedir. Bu menzil içerisine düşen adres

bloğuna (233.252.0.0 - 233.255.255.255) EGLOP adresleri denmektedir [47]. Bu

adreslerin tahsisi Yerel Internet Kayıt Otoritelerine (Regional Internet Registry)

bırakılmıştır. İstemcilerden, EGLOP adreslerinden faydalanabilmeleri için öncelikle

isteklerinin; yönetimsel olarak belirlenmiş kapsamlar, GLOP adresleme veya

kaynağa özgü çok hedefli iletim [48] kullanılarak yerine getirilemeyeceğini

kanıtlaması istenmektedir. Bu karar IANA tarafından verilmiştir ve politikanın tam

olarak belirlenmesi “Yerel Internet Kayıt Otoriteleri”’ne bırakılmıştır.

GLOP adresleme altyapısının en önemli dezavantajı sadece iki sekizliden oluşan

otonom sistem numaralarıyla uyumlu olmasıdır. Otonom sistem numaralarının 4

bayta çıkarılması çalışmalarının [49] yapıldığı bir ortamda gelecekte GLOP

altyapısını kullanım dışı kalması sonucu ortaya çıkmaktadır. Her bir otonom sisteme

sadece 256 adet çok hedefli iletim grup adresinin tahsis edilmiş olması da diğer bir

dezavantajdır. Buna ek olarak tahsis edilen menzilin otonom sistem içerisinde nasıl

dağıtılacağı tanımsızdır. Fakat grup adreslerinin, hangi otonom sisteme ait olduğunun

bilinmesi, yönetimsel açıdan pek çok kolaylığı beraberinde getirmektedir.

4.4. Tek Hedefli Ġletim ġebekelerinin Önek Olarak Kullanılması

GLOP adresleme altyapısında kullanılan mantıkta, grup adresleri bir otonom sistem

ile eşlenmektedir. Bu mantık içerisinde, otonom sistemler yerine IPv4 şebekeleri

kullanılması durumunda 255.255.255.0 şebeke maskesi veya bu maskeden daha

küçük olan her bir IPv4 şebekesi için, en az bir çok hedefli iletim grup adresi

düşmektedir. Çok hedefli iletim adreslerinin bu şekilde dağıtılmasına tek hedefli

iletim şebekelerinin önek olarak kullanılması denmektedir [50].

Böyle bir yapıda grup adresinde bulunan ilk sekizlinin IANA tarafından atanması

beklenmektedir. Takip eden sekizlilere tek hedefli iletim şebeke numarası

oturtulmaktadır. Adresleme yapısı şekil 4.3’te verilmektedir. Şekil 4.3’teki adres

yapısında ilk sekizlide yer alan değer IANA tarafından henüz deklare edilmemiştir

(24.05.2005 tarihi itibari ile). İkinci alan tek hedefli adres şebeke numarası ile

79

doldurulmakta ve üçüncü alan ise (eğer mevcut ise) o şebeke için ayrılmış grup

kimlik numaraları ile doldurulmaktadır.

0 1 2 3 4 5 6 7

Tek Hedefli Adres ÖnekiIANA

0

Grup Kimliği

Tek Hedefli İletim Adresi Önek Uzunluğu 24 - THİ Adresi Önek Uzunluğu

Şekil 4.3 – Grup adreslerinde tek hedefli iletim adres öneki kullanımı

Böylece /24 şebeke maskesine sahip tek hedefli iletim şebekeleri için tek bir grup

adresi tahsis edilebilmektedir. Şebeke maskesi küçüldükçe, o şebeke için ayrılan

grup adresi sayısı artmaktadır. Maskenin /24’ten büyük olduğu durumlarda çok

hedefli iletim grup adresi tahsis edilememesi bir dezavantajdır.

Böyle bir yapıda, GLOP adresleme altyapısına nazaran, /16 maskesine sahip olan bir

şebekeye sahip olan otonom sistemler daha fazla grup adresi elde etmektedir. Bir

otonom sistem içerisinde, birden fazla şebeke olabileceği düşünüldüğünde tek hedefli

iletim şebekelerinin önek olarak kullanımı sayesinde bir otonom sistemin, GLOP

adresleme altyapısına nazaran çok daha fazla çok hedefli iletim adresi kazanacağı

anlaşılmaktadır. Buna ek olarak böyle bir adresleme yapısı kaynağa özgü çok hedefli

iletim [48] içerisinde de kullanılabilmektedir.

80

5. ÇOK HEDEFLĠ ĠLETĠMĠN INTERNET ÜZERĠNDE KULLANIMI

5.1 Çok Hedefli Ġletimin GeliĢimi ve Çok Hedefli Ġletim Omurgası (MBONE)

1988 yılında Steve Deering tarafından ortaya atılan çok hedefli iletim [3] gün

geçtikçe gelişmiş ve Internet üzerinde geniş bir kullanıcı kitlesine sahip olmuştur.

Deering’in doktora tezi sonrasında yapılan çalışmalar ilk olarak 1992 yılında

meyvelerini vermiş ve San Diego Amerika’da yapılan IETF konferansı konuşmaları

gerçek zamanlı ve çok hedefli olarak iletilmiştir. İlk WEB tarayıcısının 1990 yılında

yazıldığı ve 1993 yılında Internet üzerinde yaklaşık 100 sitenin olduğu

düşünüldüğünde, WEB ile çok hedefli iletimin neredeyse aynı yaşta olduğu

anlaşılmaktadır [51]. Fakat çok hedefli iletimin bir hizmet olarak verilebilmesi için

kat edilmesi gereken yol, WEB hizmeti için geçerli olmadığı için günümüzde WEB

hizmeti çok hedefli iletimi kat ve kat geride bırakmıştır. Çok hedefli iletim, gerek

şebeke omurgasındaki cihazlarda gerekse uçlardaki yönlendiricilerde pek çok durum

ve hafıza gerektirmektedir. Bu sebeple çok hedefli iletimin gelişimi, şebeke

cihazlarının yeteneklerinin gelişmesine bağlı kalmıştır. Çok hedefli iletimin ideal

şekilde yapılması, kısa vadeli gelecekte mümkün olmamış ancak ticari hizmetlerin

bir an önce verilebilmesi amacıyla kısa vadeli çözümlerin oluşturulması yoluna

gidilmiştir.

1992 ila 1997 yılları arasında yapılmış olan çok hedefli iletim deneyleri, düz bir

topoloji üzerinde yapılmıştır [52]. Internet içerisindeki hiyerarşik yönlendirme yapısı

gereği bu topoloji üzerinde ortaya çıkan bulgular Internet üzerinde kullanılamamıştır.

1997 yılından itibaren, hiyerarşik çok hedefli iletim altyapısı oluşturulması gereği

anlaşılmıştır. O döneme kadar tasarlanan çok hedefli iletim protokolleri etki alanı

içerisinde kullanım için sınıflandırılmış ve etki alanları arası protokollerin

tasarlanması süreci başlamıştır.

81

Çok hedefli iletim Internet omurgası, diğer bir adıyla “MBONE” ilk trafiğini 1992

yılında taşımıştır. Dünya genelinde 20 site, San Diego’daki IETF konferansını [53]

çok hedefli olarak dinlemiştir. Çok hedefli iletim altyapısı, var olan şebeke üzerinde

sanal bir çok hedefli iletim omurgası kurularak sağlanmıştır. Yönlendirme işlemleri,

sistemler üzerinde çalışan “mrouted” adındaki bir süreç ile gerçekleştirilmiştir [52].

Mrouted süreci, tek hedefli paketler içerisine zarflanmış çok hedefli iletim paketlerini

bir arabağdaşımından alarak gerekli arabağdaşımlara iletmektedir. Sistemler

arasındaki bağlantı sanal tünellerle sağlanmıştır. Her bir tünel, yol üzerinde pek çok

yönlendiriciden geçmiş fakat tünel içerisinde çok hedefli iletim trafiği tek hedefli

iletim paketleri içerisine zarflandığı için bu yönlendiricilerin çok hedefli iletim

yeteneklerinin olmaması sorun yaratmamıştır. Mrouted süreci koşan sistemler

arasında DVMRP [25] çok hedefli iletim yönlendirme protokolü kullanılmıştır.

MBONE altyapısının ilk dönemlerinde bütün tüneller sistemler üzerinde

sonlandırılmış ve fiziksel hatlar üzerinden kimi zaman birkaç tünel birden

geçirilmiştir. MBONE üzerindeki çok hedefli iletim yönlendirmesi ilk dönemlerinde

kontrollü bir yayını andırmaktadır. İlerleyen birkaç yıl içerisinde mrouted sürecine

budama işlevi de eklenmiş ve böylece gereksiz trafiğin aktarılmasına son verilmiştir.

Şekil 5.1 – 1994 yılındaki MBONE omurgası

MBONE altyapısı 1992 yılından beri gelişmesini sürdürmüştür. Şekil 5.1’de 1994

yılındaki MBONE yapısı gösterilmektedir. Şekilde gösterilmekte olan şebekede

toplam 20 ülke ve 901 yönlendirici bulunmaktadır. İlerleyen yıllarda MBONE,

Internet üzerinde sanal bir omurga olmaktan çıkıp yavaş yavaş kimi yerlerde Internet

82

içerisine giren bir omurga halini almıştır [52]. Zamanla, Internet üzerindeki

yönlendiriciler çok hedefli iletim yeteneği kazanmış ve böylece MBONE omurgası

daha geniş alanlara yayılmıştır. Çok hedefli iletim omurgasının genişlemesi 1994

yılında MOSPF [27] ve 1996 yılında PIM-DM [19] olarak isimlendirilen ve yoğun

modda çalışan iki yeni çok hedefli iletim yönlendirme protokolünün gelişmesine

sebep olmuştur. Yeni geliştirilen protokollerin MBONE üzerinde kullanımı

sayesinde yoğun mod yönlendirme protokollerinin dezavantajları görülmüş ve seyrek

mod protokoller üzerinde yoğunlaşılmıştır. Trafiğin yayınlanması ve daha sonra

istenmeyen dalların budanması yerine katılımcıların dağıtım ağacına dahil olabilmesi

için katılım mesajı göndermesi fikri ortaya atılmıştır. Bu çalışmaları, dağıtım

ağacının kökünün ortak bir randevu noktasında olması fikri takip etmiştir. Böylece

1997 yılında CBTv2 [20] ve 1998 yılında PIM-SM [31] olarak isimlendirilen iki

seyrek mod protokolü tasarlanmıştır.

Çok hedefli iletim yönlendirme protokollerindeki gelişmeler, kullanıcıların ilgisini

çok hedefli iletime çekmiş ve böylece yönlendirme dışındaki alanlarda da gelişmeler

sağlanmıştır. Örneğin gerçek zamanlı verinin çok hedefli iletim ile taşınması

gündeme gelmiştir. Taşıma katmanı protokolleri bu iş için geliştirilmiştir. Buna

örnek olarak Gerçek Zaman Protokolü (Real-Time Protocol, RTP) [54] verilebilir.

1990’lı yıllarda MBONE üzerindeki olayların (kullanıcı oturumlarının)

koordinasyonu küresel bir oturum aracı sayesinde yapılmıştır. Bu araç, ilk olarak

“sd” daha sonra “sdr” olarak isimlendirilmiştir. İlerleyen dönemlerde omurganın

genişlemesi ve kullanıcıların artması sonucu bu araç kullanımdan kaldırılmıştır [52].

5.2. Internet Üzerinde Kullanılan Kısa Vadeli Çözümler

Çok hedefli iletim omurgasının çok geniş bir alana yayılması, problemleri de

beraberinde getirmiştir. MBONE omurgasında düz bir topolojinin olması

ölçeklenebilirlik problemlerine sebep olmuştur. Herhangi bir merkezi yönetimin

olmaması koordinasyon eksikliği yaratmıştır. Sanal tünellerin yönetimi zorlaşmıştır.

Otonom sistemler içerisinde bulunan çok hedefli yönlendirme sistemlerinin (veya

yönlendiricilerinin) başkaları tarafından yönetilmesi, istenmeyen bir durum haline

gelmiştir. Bu sebeplerden ötürü, MBONE altyapısının tıpkı Internet altyapısı gibi

hiyerarşik bir düzende genişlemesine karar verilmiştir. Çok hedefli iletim

83

yönlendirme protokollerinin hiçbirinin etki alanları arası kullanıma elverişli

olmaması dolayısıyla etki alanları arasında kullanılmak üzere yeni yönlendirme

protokollerinin tasarlanmasına başlanmıştır. İlerleyen dönemlerde pek çok protokol

oluşturulmuş fakat hiçbiri uzun vadede kullanım için uygun bulunmamıştır. Çok

hedefli iletime duyulan ihtiyaç kısa vadeli çözümlerin bulunmasına sebep olmuştur.

Çok hedefli iletim rotalarının tek hedefli iletim için tasarlanan BGP yönlendirme

protokolü [28] ile taşınmasına karar verilmiştir. 1998 yılında BGP’ye yapılan

uzantılar [29] sayesinde çok hedefli iletim rotaları MBGP ile taşınır hale gelmiştir.

Böylece otonom sistemler arası iletişimde yönlendirme politikalarının kullanımı

olanaklı kılınmıştır. Buna ek olarak MBGP sayesinde çok hedefli ve tek hedefli

politikaların ayrı olarak tanımlanabilmesi sağlanmıştır [12].

Etki alanları arasında çok hedefli iletim rotalarının değiş tokuş edilmesinin yanı sıra,

aktif olan çok hedefli iletim kaynakları hakkındaki bilgilerin de değiş tokuş edilmesi

gerekmektedir. Zira rota değiş tokuşu sadece aktif kaynaklar için yapılmaktadır.

Kaynak bilgilerinin etki alanları arasında dağıtılması için 1998 yılında Çok Hedefli

İletim Kaynak Keşif Protokolü (Multicast Source Discovery Protocol, MSDP) [35]

oluşturulmuştur. Bu protokolün detaylı açıklaması 5.2.1. bölümde verilmektedir.

MSDP sayesinde bir grup için birden fazla RP olmasına olanak tanınmakla birlikte

etki alanları içerisinde grup başına sadece bir adet RP aktif olmaktadır. PIM-SM

protokolünün geniş kullanım alanı bulması sonrasında, kaynakların diğer etki

alanlarına bildirimi MSDP ile çözülmüş ve etki alanları arasındaki çok hedefli iletim

yönlendirmesi MBGP ile sağlanmıştır. Böylece kısa vadeli çözüm tamamlanmıştır.

Bu çözüme MBGP/PIM-SM/MSDP çözümü denmektedir. Kısa vadeli çözüm

sayesinde, kullanımda olan protokoller değiştirilmemiş ve genel bir çözüm üzerinde

anlaşılmıştır. Çözüm içerisinde kullanılan protokollerin zaten kullanılıyor olması,

çok hedefli iletimin bir hizmet olarak verilmesini hızlanmıştır.

Kısa vadeli çözüm, çok hedefli iletimle ilgili bütün problemleri ortadan

kaldırmamaktadır. Kaynakların çok hedefli iletim trafiğine başlamadan önce

yönlendirme ile ilgili pek çok işlem yapılması ve dağıtım ağacının kurulmuş olması

gerekmektedir. Yönlendirmenin etki alanları arasında yapılması söz konusu ise (ki bu

durum genel durumdur), kaynaklarla ilgili bilgilerin etki alanları arasında önceden

dağıtılmış olması gerekmektedir. Kaynak bilgilerinin dağıtımına ek olarak dağıtım

ağacının etki alanlarını kapsayacak şekilde genişletilmiş olması gerekmektedir.

84

Dolayısıyla, kaynakların gönderme isteğini bildirmesiyle gönderime başlaması

arasındaki zaman uzamaktadır. Grup dinamiğinin yüksek olduğu durumlarda kaynak

gecikme süresi grup için kabul edilemeyecek kadar yüksek olabilmektedir. Bir diğer

sorun, kaynakların trafik karakteristiğinin öbeklenmiş olduğu durumlarda ortaya

çıkmaktadır. Kaynaklardan gelen trafik öbeklenmeleri arasında birkaç dakikalık

aralıklar olduğu durumlarda kimi zaman yönlendirme durumları zaman aşımına

uğrayarak silinmektedir. Öbeklenmiş trafiğin gönderileceği an geldiğinde

yönlendirme durumları silinmiş olduğu için tekrar oluşturulması gerekmektedir.

Grubun etki alanlarını kapsadığı senaryolarda yönlendirme durumlarının eksik

olması öbeklenmiş trafiğin tamamının kaybolmasına sebep olabilmektedir. Kısa

vadeli çözümü yetersiz kılan bir diğer problem ise MSDP ölçeklenebilirliğidir.

Binlerce çok hedefli iletim kaynağının mevcut olduğu durumlarda, MSDP mesaj seli

çok yüksek boyutlarda olmaktadır. Bu tür durumlarda, MSDP’nin kullanımı,

yarardan çok zarar getirmektedir.

5.2.1. Çok Hedefli Ġletim Kaynak KeĢif Protokolü (MSDP)

Çok hedefli iletim kaynak keşif protokolü (Multicast Source Discovery Protocol,

MSDP) [35], ilk olarak Aralık 1998’de D. Meyer, B. Fenner ve A. Zinin tarafından

ortaya atılmış ve IETF içerisinde bir MSDP çalışma grubu oluşturulmuştur. 1998

yılında yapılan çalışmalar sonucu MDSP’nin taslak hali [55] kullanılmaya

başlanmıştır. Buna ek olarak Internet üzerindeki MSDP tecrübeleri ve tavsiyeleri

yazılı bir doküman haline getirilmiş ve Mart 2004’te IETF’ye bir ID [56] olarak

sunulmuştur. MSDP, temelde PIM-SM etki alanlarının birbirine bağlanması ve aktif

kaynaklara ilişkin bilgilerin etki alanları arasında dağıtımı için kullanılmaktadır.

MSDP sayesinde, etki alanları içerisinde sunulan çok hedefli iletim hizmetleri etki

alanları arasında da sunulabilmektedir. Böylece çok hedefli iletim kaynağı veya

kaynakları farklı bir etki alanı (veya alanları) içerisinde bulunsa dahi, çok hedefli

iletim trafiği alıcı sistemlere iletilebilmektedir. Protokol sayesinde, etki alanları

sadece kendi içerisinde bulunan RP varlıklarını kullanmakta ve diğer etki alanları

içerisindeki kaynaklardan haberdar olmaktadır. PIM-SM etki alanı içerisinde bulunan

ve MSDP konuşabilen yönlendiriciler, diğer etki alanları içerisinde bulunan MSDP

konuşmacılarıyla TCP bağlantısı kurmakta ve kaynak aktif (Source Aktive, SA)

mesajları değiş tokuş etmektedir. Böylece sanal bir MSDP topolojisi oluşturulmakta

85

ve her etki alanının bu topoloji içerisinde yer alması sağlanmaktadır. MSDP

konuşmacıları genellikle RP varlıkları olmaktadır. Böylece MSDP konuşmacıları

sorumlu oldukları gruplara ilişkin aktif kaynaklardan anında haberdar olmaktadır.

Daha sonra bu kaynaklarla ilgili bilgiler MSDP eşlerine dağıtılmaktadır. MSDP

eşleri ise, bu mesajları kendi eşlerine dağıtmakta ve böylece bütün etki alanları

kaynaklarla ilgili bilgileri almaktadır. Etki alanı dışında bulunan bir kaynaktan çok

hedefli iletim trafiği alınmak istendiğinde, PIM-SM protokolü işletilerek etki alanları

arası bir dağıtım ağacı oluşturulmaktadır.

SA mesajlarını değiş tokuş etmek isteyen bütün RP varlıklarının diğer RP

varlıklarıyla bir MSDP oturumu oluşturması zorunludur. Bu bağlantı doğrudan veya

ara bir MSDP eşi kullanılarak oluşturulabilmektedir. SA mesajının içerisinde çok

hedefli iletim trafiğinin kaynak adresi, yollandığı grubun adresi ve ilgili RP’nin

adresi bulunmaktadır. Ethernet gibi çoklu erişim şebekeleri söz konusu olduğunda o

şebekenin DR varlığı olmayan bir RP, doğrudan bağlı olan kaynaklara ilişkin SA

mesajları yollamamalıdır. RP, bu kaynaklara ilişkin SA mesajlarını, sadece DR

varlığından gelen bir kaydolma mesajı aldığı takdirde yollamalıdır. Aksi halde,

komşu otonom sistemlere yanlış bilgiler aktarılmış olur. Her MSDP eşi, SA

mesajlarını, mesajda bulunan RP adresinden uzağa doğru ve eş RPF seli prensibine

dayanarak almakta ve iletmektedir. Eş RPF selinin kullanılmasındaki amaç, SA

mesajlarının kısır döngüye girmemesi ve her MSDP eşine bir kere iletilmesidir. RPF

eşinin bulunması için, MRIB [21] içerisindeki bilgiler kullanılmaktadır. SA

mesajının, kaynak RP varlığının RFP eşinden gelmediği durumlarda mesaj

görmezden gelinmektedir. Mesajın RPF eşinden gelmesi durumunda, o eş

haricindeki bütün MSDP eşlerine iletilmektedir. Aynı zamanda RP olan bir MSDP

eşi, yeni bir SA mesajı aldığında, kendi etki alanı içerisinde herhangi bir alıcının SA

mesajında bulunan kaynaktan gelen çok hedefli iletim trafiğine ilgi duyup

duymadığını kontrol etmektedir. Bu kontrol (*,G) katılım durumu olan arabağdaşım

listesinin boş olup olmadığına bakılarak yapılmaktadır. Bu liste boş değilse, etki

alanı içerisinde o gruba gönderilen bütün trafiği almak isteyen en az bir alıcı mevcut

demektir. Bu durumda RP, SA mesajındaki kaynağa doğru bir PIM (S,G) katılım

mesajı göndermektedir. Böylece kaynak ağacı mesajın gittiği RP varlığına ve

dolayısıyla RP varlığının bulunduğu etki alanına doğru genişlemektedir. Kaynak

ağacı kurulduktan sonra kaynaktan gelen trafik, önce RP varlığına daha sonra da

86

paylaşımlı ağaç sayesinde bütün üyelere ulaştırılmaktadır. Çok hedefli iletimin daha

verimli yapılabilmesi için etki alanındaki yaprak yönlendiricilerinin RP ağacından

çıkarak kaynak ağacına geçmesine izin verilmektedir. Alınan SA mesajları, MSDP

yönlendiricilerinin önbelleğinde tutulmaktadır. Böylece yeni bir çok hedefli iletim

grubu (G) için PIM katılım mesajı alındığında, SA önbelleğinde tutulan ilgili aktif

kaynaklar (S) için PIM (S,G) katılım mesajları yollanmaktadır. SA mesajlarının

önbelleklenmesi sayesinde yeni alıcılar için katılım gecikmesi düşürülmektedir. Buna

ek olarak MSDP mesajlarının hız denetimi yapılabilmekte ve oluşan sorunların

nedenlerinin bulunması daha kolay hale gelmektedir [35]. Gönderilen ve alınan

bütün SA mesajlarının önbellekte tutulması ve iletim için zamanlayıcıların

kullanılması, mesaj patlamasını önlemektedir. MSDP spesifikasyonunda tanımlanan

zamanlayıcılar SA anons, SA önbellek durumu, eş tutma, bağlantıyı canlı tutma ve

bağlantıyı tekrar deneme zamanlayıcılarıdır. RP varlıkları, kendilerine trafik yollayan

kaynaklar aktif olduğu sürece, periyodik olarak SA mesajı üretmektedir. RP

varlığının anons etmekte olduğu bütün kaynaklar için tek bir zamanlayıcı mevcuttur.

Bu zamanlayıcıya SA anons zamanlayıcısı denmektedir ve varsayılan değeri 60

saniyedir. Bu süre içerisinde ilgili (S,G) çifti sadece bir kere anons edilmektedir. Bu

mesajların periyodik olmasındaki amaç, MSDP yönlendiricilerindeki önbelleğin

güncel tutulmasıdır. Yeni bir kaynaktan trafik alınmaya başlandığı anda, RP o

kaynağa ilişkin SA mesajını ivedi şekilde yollamakta ve bir sonraki mesaj için 60

saniye beklemektedir. SA anonsları, SA anons periyodu içerisine yayılarak mesaj

öbeklenmesi engellenmektedir. Yönlendirici içerisindeki MSDP sürecinin

başlatılmasıyla birlikte SA anons zamanlayıcısı da başlatılmaktadır. Zamanlayıcı

dolduktan sonra tekrar başlatılmakta ve aktif olan kaynaklara ilişkin SA anonsları

MSDP mesajının maksimum uzunluğu aşılmayacak şekilde birleştirilerek

yollanmaktadır. Bu işlem, zamanlayıcının dolmasıyla birlikte tekrarlanmaktadır.

MSDP’nin periyodik bir protokol olmasından dolayı MSDP eşleri arasındaki bağlantı

oluşturulduğunda ilk olarak önbellekteki bütün bilgiler değiş tokuş edilmektedir.

Önbellek içerisinde bulunan bütün kayıtlar için, ayrıca bir SA önbellek durumu

zamanlayıcısı tutulmaktadır. Bu zamanlayıcı, (S,G) kaydı oluşturulduğunda

başlatılmakta ve (S,G) için bir güncelleme geldiği zaman tekrar başlatılmaktadır. Bu

zamanlayıcının kullanım amacı, güncel olmayan bilgilerin önbellekten silinmesidir.

SA önbellek durum zamanlayıcısının varsayılan değeri SA anons ve eş tutma

zamanlayıcılarının toplamından az olmamalıdır. İki eş arasındaki bağlantı kurulduğu

87

anda, eş tutma zamanlayıcısı başlatılmakta ve MSDP mesajı alındığı zaman tekrar

başlatılmaktadır. Eş tutma zamanlayıcısının varsayılan değeri 75 saniyedir.

Bağlantıyı canlı tutma zamanlayıcısı MSDP eşleri arasındaki bağlantı kurulu olduğu

sürece işlemekte ve dolduğu zaman tekrar başlatılarak karşı taraftaki sisteme

bağlantıyı canlı tutma mesajı gönderilmektedir. Zamanlayıcının varsayılan değeri 60

saniyedir. Bağlantıyı tekrar deneme zamanlayıcısı düşük IP adresine haiz olan MSDP

eşinin “aktif değil” durumundan “bağlanıyor” durumuna geçmesi sırasında

kullanılmaktadır ve varsayılan değeri 30 saniyedir. Bağlantı, bu süre içerisinde

kurulamadığı takdirde tekrar denenmektedir.

Genel olarak RP varlıkları, sadece kendilerine kaydolan kaynakları anons etmektedir.

RP olmayan yönlendiricilerin veya sistemlerin MSDP koşmasına izin verilmektedir.

Burada amaç, anonsların ara bölgelerden geçerek diğer RP varlıklarına ulaşmasının

sağlanmasıdır. Ara noktalarda bulunan MSDP eşlerinin, aldıkları SA mesajlarını

hiçbir değişikliğe uğratmadan veya filtrelemeden iletmesi beklenmektedir. Burada

amaç, kaynak bilgilerinin bütün Internet üzerine eksiksiz yayılmasıdır. Kısa vadeli

çözümde anonslar için filtreleme ve politikanın, MBGP [29] kullanılarak

yapılmasına karar verilmiştir.

MSDP eş RPF iletim mekanizmasında, normal RPF mekanizmasında yapılan kaynak

kontrolü RP varlıkları için yapılmaktadır. Bu kontrolde RP adresine bakılarak

mesajın doğru MSDP eşlerinden alınıp alınmadığı incelenmektedir. Bu karşılaştırma

için MRIB içerisindeki bilgilerden yararlanılmaktadır. Şekil 5.2’de R yönlendiricisi

tarafından gönderilmiş K yönlendiricisinin N eşi üzerinden aldığı bir SA mesajı

gösterilmektedir.

MPP(R,N)R KN

SA(S,G,R) SA(S,G,R)

MP(R,K). . . . . . . . . .

Şekil 5.2 – SA mesajının izlediği yol

Şekilde gösterilmekte olan MP(N,K), N ile K arasındaki MSDP oturumunu

göstermektedir. MPP(R,N) ise bir veya birden fazla MSDP bağlantısının oluşturduğu

MSDP yolunu göstermekte ve MP(R,A), MP(A,B), … , MP(B,N) olarak

tanımlanmaktadır. SA(S,G,R) ise (S,G) çifti için R randevu noktası yönlendiricisi

tarafından oluşturulmuş SA mesajını ifade etmektedir. Aşağıdaki kurallar sırasıyla

kontrol edilmekte ve herhangi biri doğru sonuç verdiği zaman N, R’ye göre K’nın

88

RPF komşusu denmektedir. Buna ek olarak, birbiri arasında MSDP oturumu

olmayan MSDP konuşmacıları arasında eş RPF kontrolü yapılmamaktadır.

1. N, R ise. Bir başka deyişle K’nın R ile bir MSDP oturumu mevcut ise,

2. N, R için eş RPF rotasının harici BGP bir sonraki adım adresi ise,

3. R için kullanılan rota N tarafından anons edilmiş ise,

4. N, R’ye doğru olan en iyi rotayı anons eden en yakın AS içerisinde ise,

5. N, R’nin statik RPF eşi olarak yapılandırıldıysa.

SA selinin minimumda tutulması için etki alanları içerisinde MSDP göz (mesh)

topolojisi oluşturulmaktadır. Bu topoloji içerisinde yer alan MSDP yönlendiricilerine

göz grupları denmektedir. Göz grupları içerisinde bulunan MSDP yönlendiricileri SA

mesajlarını diğer üyelere iletmemektedir. Bunun nedeni mesajı oluşturan

yönlendiricinin, göz grubunda bulunan bütün yönlendiricilere iletimi

gerçekleştirecek olmasıdır. Göz gruplarının gerektiği şekilde işleyebilmesi için iki

kural tanımlanmıştır. İlk kural, göz grubuna üye olan bir yönlendiricinin üye olan

başka bir yönlendiriciden mesaj alması durumunda mesajı göz grubuna üye olmayan

bütün MSDP eşlerine iletmesidir. Göz grubunda bulunan diğer üyelere iletim, mesajı

ileten yönlendirici tarafından gerçekleştirilmektedir. İkinci kural ise, göz grubuna

üye olan bir yönlendiricinin üye olmayan bir yönlendiriciden mesaj alınması

durumunda, mesajın bütün göz üyelerine iletilmesinden sorumlu olmasıdır. Göz

topolojileri sayesinde SA mesaj selleri mümkün olan en alt düzeye indirilmektedir.

MSDP, iletim protokolü olarak TCP’yi kullanmaktadır. Eş ilişkisinde bir MSDP eşi,

639 numaralı TCP kapısından bağlantıları dinlemekte, diğer MSDP eşleri ise bu

kapıya bağlantıyı gerçekleştirmektedir. Yüksek IP adresine sahip olan eş dinleyici

olmaktadır. Bu şekilde, çağrı çarpışması engellenmekte fakat bağlantının kurulması

sadece aktif tarafa bırakıldığı için bağlantı kurulma süresi artmaktadır. Bağlantı

durumu makinasında, geçersiz, aktif değil, dinleme, bağlanıyor ve bağlantı kuruldu

olmak üzere toplam beş farklı durum mevcuttur. Durum makinası şekil 5.3’de

verilmektedir. Şekilde O ile gösterilmekte olan olaylar ve E ile gösterilmekte olan

eylemler aşağıda sıralanmaktadır.

89

Geçersiz

O1

[E1]

Aktif

Değil

Bağlanıyor

Bağlantı

Kuruldu

Dinleme

O2

[E2]

O3

[E3]

O6

O4

[E4]

O10

[E9]

O7

O8

O9

[E8]

O7

[E6]

O5

[E5]

O7

[E7]

Şekil 5.3 - MSDP durum makinası diyagramı

1. O1: P ile MSDP oturumunun yapılması.

2. O2: Yönlendiricinin IP adresinin P’nin IP adresinden küçük olması.

3. O3: Yönlendiricinin IP adresinin P’nin IP adresinden büyük olması.

4. O4: TCP bağlantısı aktif tarafta kurulması.

5. O5: TCP bağlantısı pasif tarafta kurulması.

6. O6: Tekrar bağlanma zamanlayıcısı dolması.

7. O7: P ile olan MSDP eş bağlantısının kapatılması.

8. O8: Tutma zamanlayıcısı dolması.

9. O9: MSDP TLV [13] biçim hatası bulunması.

10. O10: Yukarıda sıralanan herhangi bir hatanın dışında bir hata bulunması.

11. E1: P ile yapılacak eş oturumu için gerekli yerel kaynakların ayrılması ve

P’nin IP adresi ile yönlendiricinin IP adresinin karşılaştırılması.

12. E2: TCP’nin aktif OPEN [16] durumuna geçirilmesi ve bağlantıyı tekrar

deneme zamanlayıcısının başlatılması.

13. E3: TCP’nin pasif OPEN [16] durumuna geçirilmesi.

14. E4: Bağlantıyı tekrar deneme zamanlayıcısının durdurulması, bağlantıyı canlı

tutma TLV mesajının gönderilmesi, bağlantıyı canlı tutma ve eş tutma

zamanlayıcılarının başlatılması.

15. E5: Bağlantıyı canlı tutma mesajının gönderilmesi, bağlantıyı canlı tutma ve

eş tutma zamanlayıcılarının tekrar başlatılması

16. E6: TCP’nin aktif OPEN durumunun iptal edilmesi ve P ile ilgili ayrılmış

MSDP kaynaklarının silinmesi.

90

17. E7: TCP’nin pasif OPEN durumunun iptal edilmesi ve P ile ilgili ayrılmış

MSDP kaynaklarının silinmesi.

18. E8: TCP bağlantısının kapatılması ve P ile ilgili ayrılmış MSDP

kaynaklarının silinmesi.

19. E9: Paketin görmezden gelinmesi.

Yukarıda listelenmekte olan olayların ve eylemlerin dışında, bağlantı kuruldu

durumunda iken, başka bir duruma geçişi gerektirmeyen fakat belirli eylemlerin

yapılmasını gerekli kılan çeşitli olaylar mevcuttur. Bu olaylar; bağlantıyı canlı tutma

zamanlayıcısının dolması halinde bağlantıyı canlı tutma mesajı gönderilmesi ve

zamanlayıcının tekrar başlatılması; bağlantıyı canlı tut mesajı veya SA mesajı

geldiğinde eş tutma zamanlayıcısının tekrar başlatılması; eş RPF iletim

algoritmasının çalıştırılması; SA mesajının iletildiği MSDP eşine ilişkin bağlantıyı

canlı tutma zamanlayıcılarının tekrar başlatılması; PIM-SM protokolüne ilgili

bilginin yollanması ve son olarak SA bilgisinin önbelleğe yerleştirilmesidir. MSDP

eşleri, SA anons zamanlayıcısı dolduğunda bu zamanlayıcıyı tekrar başlatarak aktif

SA bilgilerinin periyodik olarak yollanmasına başlamaktadır. Ayrıca yollanan her SA

mesajından sonra bağlantıyı canlı tutma zamanlayıcısı tekrar başlatılmaktadır. PIM

kaydolma mesajı sayesinde öğrenilen yeni yerel kaynaklar için ilgili SA mesajı

yollanmakta ve bağlantıyı canlı tutma zamanlayıcısı tekrar başlatılmaktadır.

Önbellekte bulunan ve SA önbellek durumu zamanlayıcısı dolan kayıtlara ne

yapılması gerektiği protokol spesifikasyonunda tam olarak tanımlanmamıştır fakat

kayıtların silinmesi için işaretlenmesi tavsiye edilmektedir.

MSDP mesajları, genel bir başlık bilgisinden sonra tip, uzunluk ve değer (Type,

Length, Value, TVL) biçiminde oluşturulmaktadır. Burada amaç, birden fazla

TLV’nin tek bir mesaj içerisinde iletimlinin olanaklı kılınmasıdır. Protokol

spesifikasyonunda toplam yedi adet TLV tanımlanmıştır. Şuan için sadece SA anons

ve bağlantıyı canlı tutma TLV’leri aktif olarak kullanılmaktadır. Diğer TLV’ler SA

isteği, SA yanıtı, bildirim, MSDP rota izleme işlemi sürüyor ve MSDP rota izleme

cevabıdır. İlerleyen dönemlerde MSDP kullanımına göre yeni TLV’lerin

oluşturulması planlanmaktadır. Tip numaralandırması IANA tarafından

yapılmaktadır [8]. MSDP mesajları işlenirken, TLV yapısında herhangi bir hata

bulunması durumunda MSDP eşi ile olan oturum kapatılmakta ve tekrar oluşturmaya

91

çalışılmaktadır. Buna ek olarak biçimi doğru olan fakat bilinmeyen bir TLV

alındığında görmezden gelinmektedir.

5.3. Uzun Vadeli Çözümler

Çok hedefli iletimin Internet üzerinde bir hizmet olarak sunulabilmesi için kısa

vadeli çözüm olan MBGP/PIM-SM/MSDP’nin belirli bir yere kadar kullanılabileceği

anlaşıldıktan sonra, yeni nesil uzun vadeli çözümler için çalışmalara başlanmıştır.

Yapılan çalışmalar, iki farklı şekilde yürütülmüştür. Bir tarafta, var olan çok hedefli

iletim modeli kullanılarak yeni bir çözüm üretilmeye çalışılmış, diğer tarafta

çözümün bulunması amacıyla bu modelin değiştirilmesine çalışılmıştır. Yönlendirme

alanında yürütülen çalışmalar sonrasında 1999 yılında Sınır Şebeke Geçidi Çok

Hedefli İletim Yönlendirme Protokolü (Border Gateway Multicast Routing Protocol,

BGMP) [30] oluşturulmuştur. BGMP ile birlikte, çok hedefli iletim grup adreslerinin

dağıtımı katı kurallara bağlanmış ve bu sayede etki alanları arası bağımlılık

azaltılmıştır. Ancak BGMP, doğası gereği adres tahsis mimarisine bağımlıdır.

Dolayısıyla adres tahsis mimarisinin güvenilir olması gerekmektedir [52]. BGMP’nin

ortaya çıkışı ile birlikte araştırmacılar adres tahsis mimarisi ile ilgili çalışmalara

başlamıştır. Yapılan araştırmalarda, kullanılan grup adreslerinin hangi etki alanına ait

olduğunun açık bir şekilde belirlenebiliyor olmasına çalışılmıştır. Bu amaçla, iki

farklı adresleme mimarisi ortaya atılmıştır. İlk mimari 4.1. konuda anlatılan IETF

Çok Hedefli İletim Adres Tahsis Mimarisi”’dir [36]. Bu sayede D sınıfı adreslerin

yönetimi dinamik olarak yapılabilmekte ve adres çakışmaları anında sezilip

çözülmektedir. İkinci mimari ise 4.3. konuda anlatılan GLOP adresleme altyapısıdır

[43]. Böylece her bir otonom sisteme çok hedefli adreslerin belirli bir bölümü statik

olarak atanmaktadır. Ancak bu adreslerin otonom sistem içerisinde nasıl dağıtılacağı

belirlenmemiştir. Buna ek olarak, yakın gelecekte IPv4 adres önek altyapısının

(Bölüm 4.4) BGMP ile kullanılabilmesi için çalışmalar yapılmaktadır.

Çok hedefli iletim modelinde değişiklik yapılması esasına göre çalışmalarını yürüten

araştırmacılar, altyapı konularının dışında güvenlik, faturalama ve yönetim

konularında da çalışmalar yapmıştır. MBGP/PIM-SM/MSDP ve BGMP’nin

karmaşıklığı dolayısıyla çok hedefli iletim modelinde değişiklikler yapılmış ve Kökte

Adreslenmiş Çok Hedefli İletim Mimarisi (Root Addressed Multicast Architecture,

92

RAMA) [58] oluşturulmaya çalışılmıştır. RAMA mimarisine göre, çok hedefli iletim

uygulamalarının kaynağının tek bir yerde olduğu kabul edilmiştir. Dağıtım ağacının

köküne kaynağın oturtulmasıyla diğer yönlendirme protokollerindeki merkez seçimi

bir kenara bırakılmıştır. 1999 yılında RAMA modeline uyan iki farklı teknik

üzerinde çalışmalara başlanmıştır. İlk teknik, Ekspres Çok Hedefli İletim (Express

Multicast) [59] olarak isimlendirilmektedir. Ekspres tekniğinde dağıtım ağacının

kökünde kaynak bulunmaktadır. Sistemler katılım isteklerini kaynağa göndermekte

ve böylece katılımcılar hakkında bilgiler toplanabilmektedir. Bu protokol abone

modeline göre çalışmaktadır ve kapalı gruplar oluşturulmaktadır. Abonelerle iletişim

kanallar (channel) üzerinden olmakta ve dolayısıyla faturalama

gerçekleştirilebilmektedir. Diğer bir teknik ise Basit Çok Hedefli İletim’dir (Simple

Multicast) [60]. Basit çok hedefli iletim ekspres iletimin aksine birden fazla

kaynağın aktif olmasına izin vermektedir. RAMA modeline göre geliştirilen

teknikler IETF içerisinde büyük ilgi görmüştür fakat halen teklif aşamasındadır.

Bunun sebebi çözülmesi gereken pek çok sorunun olmasıdır. En büyük sorun, bu

tekniklerin standart olarak kabul edilmesi halinde var olan yapının nasıl

değiştirileceğidir. Var olan yapı ile yeni tekniklerin birlikte yer alması ve gelecekte

eski yapıdan adım adım vazgeçilmesi bir çözümdür. Ancak böyle bir yol izlenmesi

durumunda yeni teknikler ile eski yapı arasında birlikte çalışabilirliğin sağlanması

gerekmektedir. Şuan için böyle bir çalışma mevcut değildir. Bir diğer sorun ise yeni

tekniklerin, şuan için kullanımda olan bütün çok hedefli iletim uygulamalarını

desteklememesidir. Özetlemek gerekirse çok hedefli iletim modelini değiştiren iki

yeni teknik üzerinde çalışmalar devam etmektedir. Bu tekniklerin deneyler dışında

kullanımı şuan için söz konusu değildir ve gelecekte bu tekniklere ilişkin kullanım

alanı olup olmayacağı belirsizdir.

Internet üzerinde, etki alanları arasındaki çok hedefli iletimin kullanılmaya

başlanmasından sonra ortaya çıkan bir diğer sorun ise MBONE kullanıcılarının yeni

altyapı içerisine nasıl alınacağıdır. Bu sorunun çözümüne yönelik olarak 1999 yılında

MBONE omurgasına bir otonom sistem numarası atanmış ve MBONE, AS10888

olarak ifade edilmiştir [61]. MBONE topolojisi içerisinde yer alan bütün bağlantılar

bu otonom sisteme dahil edilmiştir. AS10888 ile çok hedefli iletim yeteneğine sahip

diğer otonom sistemler arasındaki bağlantı, NASA Ames Çok Hedefli İletim Internet

Değişimi (Multicast Friendly Internet Exchance, MIX) [61] sayesinde yapılmaktadır.

93

Böylece MBONE ile MBGP/PIM-SM/MSDP çok hedefli iletimini destekleyen

otonom sistemler arasındaki bağlantı MIX sayesinde gerçekleştirilmektedir. Düz bir

topolojiye sahip olan MBONE içerisindeki organizasyonlar, kısa vadeli çözüme

geçtikçe MBONE içerisindeki tünellerini silmekte ve böylece çok hedefli iletim

yetenekleri kaybolmadan MBONE’dan kısa vadeli çözüme geçiş yapılmaktadır.

Internet omurgasının yanı sıra, yaklaşık 200 Amerikan üniversitesinin ve 60

organizasyonun birleşerek oluşturduğu yeni nesil bir omurga mevcuttur. Bu omurga

Internet2 [62] olarak adlandırılmaktadır. Internet2, tamamıyla araştırmacı çevreler

tarafından oluşturulmuş ve ticari amaç gütmeyen bir omurgadır. Internet2’nin amacı,

yeni nesil şebeke uygulamalarının ve teknolojilerinin geliştirilmesi ve geleceğin

Internet yapısına geçişte bir kapı oluşturulmasıdır. Internet2, tamamen araştırmalara

yönelik bir omurga olduğu için çok hedefli iletim ile ilgili bir çalışma grubu

kurulmuştur. Grubun başkanlığına Kevin Almeroth ve Steve Corbato getirilmiştir.

Bu çalışma grubu, Internet2 üzerindeki çok hedefli iletim çalışmalarını ve

deneylerini sürdürmektedir. Buna ek olarak, çok hedefli iletim ile ilgili yapılanma

belli kurallara bağlanıştır. Örneğin, Internet2 üzerinde yoğun mod çok hedefli iletim

protokolleri kullanımına izin verilmemekte, tüneller kullanılmamakta ve bütün

katılımcı yönlendiricilerin etki alanları arası çok hedefli iletim yönlendirmesini

destekliyor olması gerekmektedir. 1999 yılına gelindiğinde Internet2 üzerindeki

MBGP/MSDP oturumları tamamlanmış ve diğer şebekelerle Internet2 arasındaki

oturumlar kurulmaya başlanmıştır. Böylece Internet2 ile diğer şebekeler arasındaki

çok hedefli iletim bağlantıları sağlanmıştır.

94

6. ÇOK HEDEFLĠ ĠLETĠM GÜVENLĠĞĠ

Başlangıçta akademik çalışmalar için kullanılmakta olan Internet, gün geçtikçe

genişlemiş ve ticari kullanıma açılmıştır. İlerleyen dönemlerde ticari organizasyonlar

Internet’i bir araç olarak kullandıklarında karlarında büyük bir artış olacağını fark

etmiştir. Bununla birlikte Internet kullanıcılarının sayısı yıllar geçtikçe katlanarak

artmıştır. Internet’in ticari olarak kullanımı, pek çok teknolojik yeniliği beraberinde

getirmiştir. Geliştirilen yeni bağlantı teknolojileri, çekirdek şebekelerde kullanılmaya

başlanmış ve son kullanıcılara sunulan bağlantı hizmetlerinin kalitesi arttırılmıştır.

Kalite artışı, maliyetlerdeki düşüşü beraberinde getirmiştir. 2000’li yıllara

gelindiğinde Internet kullanıcıları, Internet’e bağlanmak için harcadıkları paradan

daha fazla miktarı Internet üzerinden aldıkları hizmetlere harcar duruma gelmiştir.

Bu değişimle birlikte, sunulan ticari hizmetlerin güvenliği çok büyük önem

kazanmıştır. Yapılan araştırmalar sonucunda pek çok hizmet güvenli hale getirilmeye

çalışılmıştır. Özellikle tek hedefli iletim güvenliği için IETF bünyesinde pek çok

çalışma grubu oluşturulmuş ve RFC yayımlanmıştır. Kısaca, Internet’in teknolojik

olarak gelişimi ticari hizmetleri tetiklemiş, ticari hizmetlerin Internet üzerinden

sunulması Internet güvenliğini tetiklemiştir. Günümüzde sunulan ticari hizmetler

güvenlik altyapısı olmadan sunulamamaktadır. Aynı durum çok hedefli iletim için de

geçerlidir. Çok hedefli iletim, ilk olarak akademik bir çalışma olarak ortaya atılmıştır

[3]. Daha sonra üzerinde pek çok çalışma yapılmış; çoğu problem çözülmüştür ve

çok hedefli iletim işletilebilen bir iletim teknolojisi haline gelmiştir. Ardından bu

iletim teknolojisinin pek çok ticari hizmetin sunulmasında kullanılabileceği

anlaşılmış ve geçmişte olduğu gibi nasıl güvenli hale getirilebileceği üzerinde

çalışmalara başlanmıştır.

95

6.1 Çok Hedefli Ġletim Güvenlik Uzayı

IETF içerisindeki çok hedefli iletim ve grup güvenliği ile ilgili ilk çalışmalar

IRTF’de başlamıştır. Internet Araştırma Görev Gücü (Internet Research Task Force,

IRTF); görevi ufukta görünen teknolojilerle ilgili araştırma çalışmalarını yürütmek,

teoriler oluşturmak ve neyin nasıl standartlaştırılacağını belirlemek olan bir

organizasyondur. IRTF, IETF’nin kardeş organizasyonudur. Bu iki organizasyon

Internet Toplumu (Internet Society) tarafından finanse edilmektedir. 1990’larda çok

hedefli iletime duyulan ilgi artmaya başladıktan sonra güvenlik çalışmalarına

yoğunlaşılmıştır. O dönemlerde çok hedefli iletim ile ilgili güvenlik teknolojileri

standartlaştırılma aşamasında olmadığı için SMuG diye adlandırılan bir IRTF

araştırma grubu kurulmuştur. Bu grup ismini “güvenli çok hedefli iletim”’den

(Secure Multicast Group) almaktadır. SMuG’ın öncelikli görevi, çok hedefli iletim

ile ilgili kurulmuş olan diğer araştırma ve çalışma gruplarının güvenlik sorunlarını

çözmektir. Dolayısıyla SMuG, IETF ve IRTF içerisindeki pek çok grupla yakından

ilgilenmiş ve paralel çalışmalar yürütmüştür. SMuG bünyesinde standarda yakın pek

çok öneri dokümanı yayımlanmıştır. 2000 Mart’ında yapılan bütün çalışmalar, yeni

kurulan Çok Hedefli İletim Güvenlik Çalışma Grubu’na (Multicast Security Group,

MSEC) devredilmiştir. 2000’in Haziran ayında SMuG tekrar yapılandırılmış ve adı

Grup Güvenlik Araştırma Grubu (Group Security, GSEC) olarak değiştirilmiş;

GSEC ile birlikte, araştırma uzayı grup güvenliğini de kapsayacak şekilde

genişletilmiştir. IETF ve IRTF bünyesinde yapılan çalışmalarda genel amaç, var olan

yapının güvenli hale getirilmesi ve sağlanan güvenliğin var olan yapının işleyişini

değiştirmemesi veya değişimin minimum seviyede tutulmasıdır. Araştırmacılar;

maksimum güvenlik ve minimum ek yük ilkesiyle çalışmalarını yürütmüşlerdir.

Çok hedefli iletimin güvenli hale getirilmesi için öncelikle var olan yapının analizi

yapılmalıdır. Bu analizde grup karakteristikleri güvenlik çerçevesinden bakılarak

incelenmelidir. Daha sonra sağlanmak istenen güvenlik derecesinin var olan yapının

performansına nasıl etki edeceği ortaya çıkarılmalıdır.

96

6.1.1. Grup Karakteristikleri

Çok hedefli iletimde kullanılmakta olan hedef gruplarının tanımı çok esnektir.

Aşağıdaki listede grup karakteristikleri, güvenlik çerçevesinden bakılarak

incelenmektedir [63].

1. Grup büyüklüğü: Grup üyelerinin sayısında herhangi bir kısıtlama yoktur.

Küçük tartışma gruplarında üye sayısı 10 ila 20 kişi arasında değişmekte,

televizyon yayınlarında ise bu sayı birkaç milyonu bulabilmektedir.

2. Üye karakteristikleri: Gruba dahil olan üyelerin platformları güvenlik

açısından önemlidir. Üyelerin, güvenlik ile ilgili işlevlerden bazılarını

üstleneceği düşünüldüğünde, işlem gücü ve hafıza kapasitelerinin yeterli

seviyede olması gerekmektedir. Dolayısıyla üyelerin işlem kabiliyetleri

güvenlik çözümleri için önem taşımaktadır. Genelde grubun bütün

üyelerinin işlem güçlerinin aynı ve / veya belirli bir seviyenin üzerinde

olması istenmektedir. Aksi halde verilen hizmetin güvenliği homojen

olarak sağlanamayacağından işlem gücü yetersiz üyeler sorun

yaratacaktır. Bir başka önemli özellik ise, üyelerin çok hedefli iletimin

başlangıcından bitişine kadar çevirim içi olup olmayacağıdır.

3. Üyelik dinamikleri: Sistemlerin, gruba ne zaman dahil olacağı ve ne

zaman gruptan ayrılacağının bilinmesi önemlidir. İletime başlanmadan

önce, üyelik bilgilerinin bilinmesi çeşitli avantajlar sağlamaktadır.

Güvenlik çalışmalarında, alıcı sistemlerin ne kadar sıklıkla gruba dahil

olacağı ve gruptan ayrılacağının bilinmesi istenmektedir. Bu özellik,

“üyelik değişim frekansı” olarak tanımlanmaktadır. Güvenlik

çerçevesinden bakıldığında, üyelik değişimlerinin güvenlik

mekanizmalarına ivedi şekilde mi yoksa biriktirilerek mi iletileceği

önemli bir tasarım seçeneğidir.

4. Grubun yaşam süresi: Çok hedefli iletimin ne kadar süreceğini

belirtmektedir. Çok hedefli iletim gruplarının yaşam süresi birkaç dakika

veya birkaç gün olabilmektedir. Hatta çoğu uygulama için bitiş süresi

belirsizdir.

5. Kaynakların sayısı ve tipi: Bir hedef grubu için tek bir kaynak veya birden

fazla kaynak aynı anda aktif olabilmektedir. Hatta video konferans

gruplarında, bütün alıcılar aynı zamanda bir kaynak görevi de

97

görmektedir. Güvenlik söz konusu olduğunda kaynakların kimliğinin

bilinip bilinmemesi ve gruba üye olmayan sistemlerin kaynak görevi

görüp görmeyeceği önem taşımaktadır.

6. Trafiğin hacmi ve tipi: Çok hedefli olarak iletilen verinin trafik hacmi

gruptan gruba değişiklik göstermektedir. Video konferans gibi çeşitli

gruplarda iletimin gerçek zamanlı yapılması gerekmekte; fakat FTP (M-

FTP) gibi çok hedefli uygulamalarda gecikmelere tahammül

edilebilmektedir.

6.1.2. Güvenlik Gereksinimleri

Çok hedefli iletim güvenliği, Internet Protokolü mimarisinde bulunan şebeke

katmanını ve bu katman üzerindeki bütün katmanları ilgilendirmektedir. Grup

yönetimi ve erişim kontrolü en önemli güvenlik sorunlarından biridir. Bu nedenle

kayıt yaptırmış ve izinli sistemlerin grup iletişimine dahil olması gerekmekte ve kayıt

dışı sistemlerin iletilen veriyi çalmasına engel olunmalıdır. Bu sorun çoğu zaman

sadece grup üyelerinin bildiği bir grup şifreleme anahtarıyla çözülmektedir. İletilmek

istenen bilgi, bu anahtar ile şifrelenip çok hedefli olarak iletilmektedir ve grup

üyeleri, şifreli veriyi alarak deşifre etmektedir. Grup anahtarlarının yanı sıra

hiyerarşik çözümler de vardır. Grup yönetimi ve erişim kontrolü çok geniş bir

konudur ve çeşitli alt konulara bölünerek incelenmesinde yarar vardır. Alt konular

aşağıda sıralanmaktadır.

1. Potansiyel grup üyelerinin kimliklerinin nasıl doğrulanacağı

2. Grup anahtarlarının güvenli bir şekilde nasıl dağıtılacağı

3. Geçersiz bir üyenin üyeliğinin nasıl yürürlükten kaldırılacağı

4. Gruba yeni katılan üyelerin geçmiş bilgilere erişmesine nasıl engel

olunacağı

5. Gruptan ayrılan üyelerin gelecekte bilgilere erişmesine nasıl engel

olunacağı

6. Grup anahtarının periyodik olarak nasıl değiştirileceği

7. Kayıtların harici otoriteler tarafından nasıl denetleneceği

Çeşitli uygulamalarda, grup üyesi olmayan sistemlerin iletilen verinin sadece en

önemli bölümlerine erişiminin kısıtlanması yeterlidir. Böylece harici sistemler

98

verinin belli bir kısmını elde etse bile, bunun hiçbir yararı olmayacaktır. MPEG

Video iletimi söz konusu olduğunda, sadece düşük seviye Fourier katsayılarının

şifrelenmesi, kısmi şifrelemeye bir örnektir [63]. Kısmi şifreleme her uygulama için

yeterli olmamaktadır. Milli güvenlik gibi yüksek önem taşıyan uygulamalarda, uzun

vadeli yüksek güvenlik amaçlanmaktadır. Burada amaç, üye olmayan sistemlerin

iletimden uzun zaman sonra da verilere ulaşamamasının sağlanmasıdır. Bu özellik

çok önemli gözükse dahi, grup büyüklüğünün güvenlik teminatıyla ters orantılı

olduğu unutulmamalıdır.

Kaynak kimlik doğrulaması ve veri içeriğinin doğrulanması, çok hedefli iletim

güvenlik uzayının bir parçasıdır. Kaynak kimlik doğrulaması, gruba sadece istenen

kaynakların veri göndermesini garanti etmekte ve iletim iznine sahip olmayan

kaynakların gruba etki etmesine izin vermemektedir. Böylece grup üyeleri, kimliğini

doğrulayamadığı kaynaklardan gelen verileri görmezden gelmektedir. Kimlik

doğrulaması iki farklı şekilde kullanılmaktadır. Grup kimlik doğrulaması, grup

üyelerinin aldıkları mesajın aynı gruba üye herhangi bir sistemden gelip gelmediğini

doğrulamak için kullanılmaktadır. Kaynak kimlik doğrulamasında işlemler bireyler

bazında yapılmaktadır. Kimlik doğrulamasının yanı sıra gönderilen verinin yol

üzerinde değiştirilememesi veya değiştirildiğinde bunun saptanabilmesi

gerekmektedir. Bu işleme “veri içeriğinin doğrulanması” denmektedir.

Kimi uygulamalarda grup üyelerinin veya kaynakların kimliklerinin gizli tutulması

istenmektedir. Kaynakların ve / veya alıcıların anonim kalması, kötü niyetli kişilerin

trafik analizi yaparak çeşitli bulgular elde etmesinden korunmak için gereklidir.

Bunun yanı sıra, gönderilmiş olan veri tekrar gönderildiğinde bunun saptanabilmesi

gerekmektedir. Verinin gönderilen bir kısmının, ilgili kaynak veya üçüncü parti bir

sistem tarafından tekrar gönderilmesinin engellenmesi istenmektedir. Altyapı ile

ilgili kontrol mesajları söz konusu olduğunda, tekrar gönderim tehlikeli bir güvenlik

açığı yaratmaktadır. Tekrar gönderimin engellenmesi, doğası gereği kaynak ve

alıcılarını anonim olmasına ters düşmektedir. Bu yüzden hangisinin kullanılacağı

veya ikisinin de kullanım dışı bırakılması bir tasarım seçeneğidir.

Kötü niyetli kişilerin saldırılarına karşı hizmet kalitesinin aynı seviyede tutulması

zorunludur. Bu iş, çok hedefli iletim söz konusu olduğunda daha da zorlaşmaktadır.

Çeşitli saldırılan sonucunda dağıtım ağacının yapısı değiştirilmekte ve böylece belirli

99

noktalarda oluşturulan dar boğazlar hizmet kalitesini düşürmektedir. Bunun gibi pek

çok örnek vardır.

Yukarıda yapılan analize ek olarak, Internet mimarisindeki katmanlı yapı

düşünüldüğünde, çok hedefli iletimle ilgili güvenlik sorunları iki farklı grupta

toplanmaktadır. İlk grup; şebeke katmanında bulunan yönlendirme altyapı güvenliği,

dağıtım ağacına olan erişim güvenliği, yukarı katmanları da içeren grup anahtarlama

materyallerinin yönetimi ve grup güvenlik politikalarıdır. İkinci grup ise taşıma

katmanında bulunan grup taşıma güvenliği ve en üst katman olan uygulama

katmanında bulunan çok hedefli iletim uygulamalarının güvenliğidir. Temel güvenlik

sorunları çözülmeden ikinci gruptaki sorunları çözülmesi pratik değildir. Zira

yönlendirme altyapısında meydana gelebilecek bir güvenlik açığı, en üst seviyede

bulunan uygulama güvenliğini doğrudan etkilemektedir.

Şekil 6.1’de temel grupla ilgili güvenlik problemleri topolojik çizimde

gösterilmektedir.

Y

B

B

A

A

B

B

A

Y

K

B

Y

AY

AS

B

B

A

AS

AS

AS

AS

A

A

A

A

B

A

B

BA

A

Y

AS

İçerik şifreleme ve deşifre

işlemleri için anahtarlama

materyallerinin yönetimi.

Güvenli dağıtım ağacı

için yönlendirme

altyapısının korunması.

Dağıtım ağacına

erişimin güvenli

hale getirilmesi.

Y

A

AS

B

K

Yönlendirici

Alıcı

Sınır Yönlendiricisi

Kaynak

Otonom Sistem

Şekil 6.1 – Temel güvenlik sorunlarına topolojik bakış

Şekil 6.1’de gösterilmekte olan Internet yapısında otonom sistemlerin belirlediği

sınırlar, güvenlik ile ilgili problemleri daha karmaşık hale getirmektedir. Bunun

100

nedeni otonom sistemlerin yönetiminin, farklı ticari organizasyonlar tarafından

yapılıyor olmasıdır. Çok hedefli yönlendirme protokolleri ele alındığında, öncelikle

bu protokollerin tasarımında hiçbir güvenlik açığı olmaması gerekmektedir. Tasarım

açıkları, çok hedefli iletim güvenliğinin dışındadır. Yönlendirme protokollerinin

temel görevi, kaynak veya kaynaklardan alınan verinin dağıtım ağacının uçlarında

bulunan alıcılara ulaştırılmalıdır. Yönlendirmenin güvenli bir şekilde yapılabilmesi

için ilgili protokolü koşan cihazlar arasındaki kontrol haberleşmesinin güvenli olması

gerekmektedir. Kontrol mesajlarının yol üzerinde değiştirilmesinin veya tekrar

edilmesinin engellenmesi, kimliği doğrulanmamış cihazlardan alınan mesajların

saptanabilmesi ve mesajların silinmesine karşı güvenlik mekanizmalarının

oluşturulması gerekmektedir. Çok hedefli yönlendirmede kullanılan pek çok bilgi;

tek hedefli iletim tablolarından alınmakta olduğu için, tek hedefli yönlendirmeyle

ilgili sistem bileşenlerinin ayrıca korunması gerekmektedir.

Temel çok hedefli iletim modeli [1], herhangi bir sistemin istediği gruba üye

olmasına izin vermektedir. Sistemlerin gruplara katılabilmesi için, ilk adım çok

hedefli iletim yönlendiricilerine IGMP katılım mesajı göndermeleri yeterlidir. Bu

model ölçeklenebilirlik açısından uygun olsa dahi, güvenlik açısından pek çok

sorunu beraberinde getirmektedir. Yönlendirmede kullanılan dağıtım ağacı güvenlik

hale getirildikten sonra bu ağaca erişimin kontrol altında tutulması gerekmektedir.

Bunun sağlanabilmesi için IGMP gibi, sistemlerin gruplara katılmasını ve

ayrılmasını sağlayan protokollerin güvenli hale getirilmesi gerekmektedir. Aksi halde

kötü niyetli bir kişi, hakkı olmadığı halde, gruba üye olarak dağıtım ağacını kendi alt

şebekesine çekebilmektedir. Böylece kaynaklardan gönderilmekte olan veri

şifrelenmiş olsa dahi, kötü niyetli alıcıya ulaşmaktadır. Bu sayede alıcı ile kaynak

arasında bulunan yönlendiricilerdeki sistem kaynakları boşa harcanmaktadır.

Dolayısıyla dağıtım ağacının gereksiz yere pek çok alt şebekeye uzanması nedeniyle

hizmet kalitesinde düşüşler meydana gelmektedir. Televizyon yayınlarında verinin

gerçek zamanlı iletilmesi gerekmekte ancak bu sayede bütün hizmet etkilenmektedir.

Bu tür saldırılara “dağıtılmış hizmet kalitesini durdurma” (Distributed Denial of

Quality of Service, DDoS) saldırıları denilmektedir. DDoS ataklarına sebep olan bir

başka güvenlik açığı ise kaynak erişim kontrolüdür. Temel çok hedefli iletim

modelinde, herhangi bir sistem; hedef grup adresini bildiği sürece gruba veri

yollayabilmektedir. Kötü niyetli bir kişi, grup adresini bildiği sürece aslında hiçbir

101

bilgi değeri içermeyen veriyi gruba yollayarak bilgi değeri olan veriyi

bastırabilmektedir. Böylece alıcılar hizmetten mahrum kalmaktadır.

Çok hedefli iletim kullanılarak dağıtılan verinin, sadece yasal sistemlere dağıtılması

gerekmektedir. Bunun için şifreleme ve kimlik doğrulama mekanizmaları

kullanılmaktadır. Basit tanımıyla şifreleme, kaynak tarafında iletilen verinin

şifrelenmesi ve diğer uçtaki alıcıda şifrenin çözülerek bilginin elde edilmesi olarak

tanımlanmaktadır. Verinin korunması amacıyla kriptografi kullanımı güvenlik

yapısına çeşitli anahtarların katılmasına neden olmaktadır. Dolayısıyla bu

anahtarların da korunması ve yönetilmesi gerekmektedir. Anahtarlama

materyalleriyle ilgili politikaların belirlenmesi, üyelerin hangi anahtarları nasıl

alması gerektiğinin saptanması ve hangi kriptografik algoritmaların kullanılması

gerektiği grup anahtar yönetimi olarak tanımlanmaktadır. Güvenlik nedenlerinden

dolayı grup anahtar yönetiminin çok hedefli iletim için kullanılan yönlendirme

protokolünü kullanmaması gerekmektedir [64]. İlke olarak, grup anahtar yönetimiyle

ilgili protokollerin herhangi bir yönlendirme protokolüne bağımlı olmaması

sağlanmalıdır. Buna ek olarak, gruba üye olmak isteyen herhangi bir sistemin başarılı

bir şekilde gruba dahil edilebilmesi için, grup anahtar yönetimi ve seçilmiş güvenlik

ilkeleriyle ilgili belirli bilgileri bilmesi gerekmektedir. Bunun için bir anons

mekanizması oluşturulması zorunludur. Aksi takdirde hiçbir sistem gruba üye

olamayacak, üye olsa dahi veriyi deşifre edemeyecektir. Anahtar yönetimiyle ilgili

en büyük sorun, ölçeklenebilirliktir. Genel olarak bu tür protokoller içerisinde, bir ya

da birkaç güvenlik yönetim varlığı bulunmaktadır. Bu varlığın görevi anahtarların

yönetimidir. Protokole dahil olan bütün sistemlerin bu varlığa güvenmesi ve grup

üyelerinin bu varlık ile (tek hedefli) iletişim halinde olması gerekmektedir. Bu tür bir

yapıda güvenlik yönetim varlıkları dar boğaz oluşturmakta ve muhtemel saldırılar

için bir potansiyel haline gelmektedir. Ölçeklenebilirliğe etki eden bir diğer faktör ise

üyelerin değişmesi sonucu grup anahtarlarının tekrar dağıtım şeklidir. Grup

üyeliğinin değişmesinin gruba minimum etkisi olması gerekmektedir. Bunu için

üyelik değişimlerinden mümkün olduğunca az sayıda üyenin etkilenmesi

sağlanmalıdır.

Çok hedefli iletim güvenlik uzayındaki diğer grup ise taşıma katmanı ve uygulama

katmanı içerisindeki güvenliktir. Taşıma katmanındaki güvenlik için pek çok

güvenilir çok hedefli iletim protokolü geliştirilmiştir. Güvenilir çok hedefli iletim

102

protokollerini diğerlerinden ayıran en önemli özellik; veri bloklarının uçlara ulaşıp

ulaşmadığıyla ilgili geri besleme mekanizmalarının varlığıdır. Bu tür protokollerin

güvenli hale getirilmesi için öncelikle değiş tokuş edilen kontrol mesajlarının güvenli

hale getirilmesi gerekmektedir. Uygulama katmanındaki güvenlik ise alınan çok

hedefli hizmetin ve uygulamanın özelliklerine göre çeşitlilik göstermektedir. Çoktan

çoğa olan uygulamalarda, grupların açık veya kapalı olması söz konusudur. Bu tür

uygulamalara örnek olarak sohbet odaları ve konferanslar gösterilebilir. Grubun açık

olması hali, iletim gerçekleşmekteyken yeni üyelerin katılabileceğini, tam tersi

olarak kapalı olması ise yeni üyelerin kabul edilmeyeceğini göstermektedir. Kapalı

gruplarda alıcıların listesi önceden bilinmektedir. İletim başlamadan bu listeye

girmek isteyen alıcıların kimliklerini ispatlaması gerekmektedir. Genelde bu tür

ispatlar grup sahibine karşı yapılmaktadır. Grup sahibi, yönetim konusundaki tek

otoritedir. Bir diğer özellik ise, güven ilişkilerinin nasıl olacağıdır. Güven ilişkileri,

en üstten aşağıya doğru oluşturulmaktadır. Örneğin, etki alanı genelinde tek bir

sertifika otoritesi mevcut olmakta ve etki alanı içerisindeki bölgelerde anahtar

dağıtıcıları bu otoriteye güvenmektedir. İletimin birden fazla otonom sistemi

kapsadığı durumlarda, etki alanları arasındaki güven ilişkisinin nasıl olacağı önem

taşımaktadır. Etki alanı içerisinde bulunan sistemlerin diğer etki alanları içerisindeki

otoritelere güvenmesi çeşitli yönetimsel sorunları beraberinde getirmektedir.

Sistemlerin kimliklerinin kontrolü ve anonim katılımcılara izin verilip verilmeyeceği

uygulamadan uygulamaya değişmektedir. Çeşitli uygulamalarda üyelerin bulunduğu

yer (örneğin IP adresi veya bulunduğu alt şebeke) özel bilgi olarak sayılmakta, fakat

böyle bir istek yönlendirme protokollerinin işleyişine ters düşmektedir.

Katılımcıların kimliğinin anonim olarak kalması uygulama katmanında rumuzlar

(pseudonym) kullanılarak sağlanabilmektedir [65,60]. Buna ek olarak vekil

sunucularının kullanımı bir başka çözüm yoludur. Yukarıda anlatıldığı gibi taşıma ve

uygulama güvenliğine ilişkin pek çok konu mevcuttur ve çözümler uygulamadan

uygulamaya değişiklik göstermektedir.

6.1.3. Performans Parametreleri

Var olan çok hedefli iletim yapısı güvenli hale getirilirken, iletim performansının

bundan etkilenmemesi veya minimum seviyede etkilenmesi zorunludur. Uygulanan

güvenlik seviyesine göre performans parametreleri mutlaka analiz edilmelidir.

103

Burada en önemli noktalar, güvenlik önlemlerinin veri paketlerinin gecikme süresine

etkisi, bandgenişliği kullanımı ve paket başına ihtiyaç duyulan ek işlem yüküdür

[63]. Bu parametrelerin minimize edilmesi en yüksek derecede öneme sahiptir.

Gerçek zamanlı olarak yapılan iletimde gecikme süresi, çok önemli bir performans

kıstası olmaktadır. Şebeke üzerindeki dar boğazların alıcı sistemlere en yakın

yerlerde olduğu varsayıldığı zaman bandgenişliğinin minimum seviyede tutulması

iletimin sağlıklı yapılabilmesi için önemlidir. Aynı durum kontrol paketleri için de

geçerlidir. Güvenlik önlemleri sonucunda, kontrol paketlerine etkiyen gecikme

sürelerinin, bandgenişliği kullanımının ve paket başına getirilen ek yükün minimum

seviyede tutulması gerekmektedir. Kontrol mesajları, veri iletiminden daha seyrek

olarak yapılsa bile anahtar dağıtımı ve yönlendirme gibi mekanizmalarda rol

oynadığı için büyük önem taşımaktadır.

Grup başlangıcı, üye eklenmesi ve çıkarılması safhaları güvenlik mekanizmaları için

önem taşımaktadır. Herhangi bir güvenlik önlemi alınmadığında bu safhalar için

harcanan süreler sıfıra yakındır. Güvenlik önlemleri devreye alındıktan sonra bu

safhalarda harcanan süreler ve yapılması gereken işlemler performansı doğrudan

etkilemektedir. Aynı durum kaynaklar için de geçerlidir. Bir kaynağın veri gönderme

isteğini bildirmesiyle veri göndermeye başlaması arasında geçen süreye “kaynak

başlangıç gecikmesi” denmektedir. Uygulanmak istenen güvenlik önlemlerinin bu

süreyi minimumda tutması gerekmektedir.

Televizyon yayınlarının çok hedefli iletilmesi gibi uygulamalarda yayının

başlamasından hemen önce ve yayının bitmesinden hemen sonra çok yüksek sayıda

giriş çıkış işlemi yapılmaktadır. Kontrol hizmetlerini sunan varlıklara yapılan

istekler, bu küçük aralıklarda maksimum seviyeye ulaşmaktadır. Uygulanan güvenlik

önlemleri, kontrol iletişiminin maksimum olduğu zamanlarda yığılmayı beraberinde

getirmemelidir. Buna ek olarak kayıtlı bir grup üyesinin herhangi bir nedenden

dolayı ulaşılamaz olup belli bir süre sonra tekrar ulaşılabilir olduğu durumlarda

hizmeti almaya devam etmesinin sağlanması gerekmektedir. Uygulanan güvenlik

önlemlerinin gruptan kopan üyelerin tekrar veri almaya başlamasını geciktirmemesi

veya minimum süre geciktirmesi beklenmektedir.

104

6.1.4. Çok Hedefli Ġletim ve Grup Güvenlik Çatısı

Çok hedefli iletimin güvenli hale getirilmesi için yapılan araştırmalarda anahtarlama

materyallerinin yönetimi en önemli sorunlardan biri olarak değerlendirilmektedir. İlk

olarak SMuG ve daha sonra MSEC grupları içerisinde yapılan araştırmalarda, gruplar

içerisindeki çalışmaların koordine edilebilmesi için ortak bir “çok hedefli iletim ve

grup güvenlik çatısı” oluşturulması fikri ortaya atılmıştır [4]. Bu fikir 1990 yılında

yapılan 44. IETF toplantısında diğer araştırmacılarla paylaşılmıştır. Güvenlik

çatısında, anahtarlama materyallerinin yönetimi temel sorun olarak ele alınmaktadır.

Güvenlik çatısı içerisinde yer alan varlıklar kutularla gösterilmektedir. Bu kutular

işlevsel varlıkları temsil etmektedir. Kutular arasındaki bağlantılar ise bu varlıkların

arasında olan arabirimleri ifade etmektedir. Bu arabirimler için standart protokollerin

oluşturulması gerekmektedir [4]. Güvenlik çatısı şekil 6.2’de gösterilmektedir.

Güvenlik

Politikası

Sunucusu

Grup

denetleyicisi

&

Anahtar

sunucusu(GDAS)

Kaynak

Alıcı

Güvenlik

Politikası

Sunucusu

Grup

denetleyicisi

&

Anahtar

sunucusu(GDAS)

Alıcı

M-to-M

1-to-M

1-to-M

M-to-M

Merkezi Tasarım Dağıtılmış Tasarım

Problem alanı 3(Güvenlik Politikaları)

Problem alanı 2(Anahtar Yönetimi)

Problem alanı 1(Veri Dönüşümleri)

Şekil 6.2 Çok hedefli iletim ve grup güvenlik çatısı

IETF içerisindeki çalışma gruplarında ve IRTF içerisindeki araştırma gruplarında

yapılan çalışmaların ortak yürütülebilmesi için şekil 6.2’deki güvenlik çatısı

oluşturulmuştur. Anahtarlama materyallerinin yönetimi adına yapılan bütün

çalışmalar bu çatıya uygun olarak yapılmış ve böylece birbiriyle çalışabilme

prensibine sadık kalınmıştır. Diğer önemli güvenlik konularından olan altyapı

güvenliği, PIM çalışma grubuna bırakılmıştır. Dağıtım ağacına erişimin güvenli hale

getirilmesi konusu, SMuG grubunda daha düşük öncelikle ele alınmıştır.

105

Şekil 6.2 incelendiğinde yapının mimari olarak nasıl olması gerektiği, güvenlik

problemlerinin birbirinden nasıl ayrıldığı ve standart protokollerin nerede ve nasıl

oluşturulması gerektiği görülmektedir. Mimari, merkezi veya daha ölçeklenebilir

olan dağıtık yapıda olabilmektedir. Güvenlikle ilgili sorunlara daha kolay

yoğunlaşılabilmesi için problem alanları belirlenmiştir. Bu sayede çatı içerisinde yer

alan varlıklar arasındaki haberleşmenin nasıl olması gerektiği ile ilgili düzenlemeler

yapılmıştır. Varlıklar arasındaki haberleşmenin sağlanabilmesi için protokollerin

tanımlanması gerekmektedir. Bu protokoller, şekilde oklar olarak gösterilmektedir.

Burada kutuların tek bir varlığı göstermediğini; aksine bu kutuların

sorumluluklarının birden fazla varlık tarafından gerçekleştirilebileceği

unutulmamalıdır.

Güvenlik çatısında bulunan “Grup denetleyicisi ve Anahtar sunucusu - (GDAS)”

varlığının temel görevi anahtarların ihracı ve yönetimidir. Bu anahtarlar, gruba dahil

olmak isteyen sistemlerin kimliğinin doğrulanması ve iletilen verinin deşifre edilmesi

gibi işlerde kullanılmaktadır. Grup denetleyicisi ve anahtar sunucusu gerçekleştirdiği

işlevler bakımından grup üyelik yönetim mimarisinin merkezinde bulunmaktadır. Bu

işlevlerin ölçeklenebilir olması için, GDAS varlıkları arasındaki haberleşmenin

sağlanması gerekmektedir. Böyle bir yapıda grup üyeleri, en yakındaki GDAS ile

veya birden fazla GDAS ile iletişim kurmaktadır. Buna ek olarak GDAS varlıklarının

güvenlik çatısı içerisinde bulunan güvenlik politikası sunucularıyla haberleşmesi

gerekmektedir.

Güvenlik çatısında GDAS’ın yanı sıra kaynak ve alıcılar da bulunmaktadır.

Kaynağın görevi, bilgi değeri taşıyan verinin gruba iletilmesidir. Veri iletimi, tek bir

kaynaktan veya birden fazla kaynaktan olabilmektedir. Anahtar yönetimi söz konusu

olduğunda, kaynağın ve alıcıların GDAS ile haberleşmesi gerekmektedir. Kaynağın

gruba bilgi yollamasına izin verilmeden önce kimlik doğrulaması yapılmalıdır.

Bunun yanı sıra iletilen verinin şifrelenebilmesi için kaynağın uygun şifreleme

anahtarlarını elde etmesi gerekmektedir. Kaynak, bu bilgileri GDAS’la haberleşerek

elde etmektedir. Aynı durum anahtar güncellemesi için de geçerlidir. Üye kümesi

değiştiğinde grubtan ayrılan üyelerin iletilen veriyi deşifre edememeleri için veriyi

şifrelemek amacıyla kullanılan anahtarların değiştirilmesi gerekmektedir. Güvenlik

politikası sunucuları, kaynak ve alıcılara doğrudan bir yaptırım uygulamamaktadır.

106

Bu yaptırım GDAS üzerinden uygulanmaktadır. Sonuç olarak kaynak ve alıcılar,

güvenlik politikası sunucularıyla dolaylı olarak haberleşmektedir.

Güvenlik politikası sunucusu varlıkları, belirli bir çok hedefli iletim grubuna özgü

belirlenmiş politikaları GDAS ile haberleşerek uygulatmak için kullanılmaktadır.

Güvenlik politikaları, sistem yöneticileri ve grup sahipleri tarafından

belirlenmektedir.

Şekil 6.2’de gösterilmekte olan IETF güvenlik çatısında üç farklı problem alanı

belirlenmiştir. Burada amaç, çok geniş bir problemi küçük parçalara bölerek değişik

çalışma gruplarının değişik problem alanları üzerinde çalışmasının sağlanmasıdır.

Problem alanları içerisinde yapılan çalışmaların başarıya ulaşabilmesi için grupların

birbirleriyle çok yakın çalışması ve koordinasyon içinde olması gerekmektedir. Buna

örnek olarak grup politikasının anahtar yönetim kurallarını belirlemesi fakat anahtar

dağıtımının uç noktalarda yapılıyor olması verilebilir. Genel güvenliğin

sağlanabilmesi için alanlar arası iletişimin maksimum seviyede olması

gerekmektedir. Her bir problem alanı için yapılan çalışmaların sonucu olarak, çeşitli

standart protokoller oluşturulması amaçlanmıştır.

Veri dönüşümleri olarak isimlendirilen ilk problem alanı, bilginin kaynaktan

alıcılara kadar iletilmesi sırasında maruz kaldığı değişimleri kapsamaktadır. Bilginin

öncelikle doğru kaynaktan gelip gelmediği kontrol edilmelidir. Bunun için kimlik

doğrulamasının yapılması gerekmektedir. Kimlik doğrulaması iki farklı şekilde

yapılabilmektedir. İlk yol, kaynak kimlik doğrulaması ve buna ek olarak verinin

doğruluğunun kontrolüdür. Kaynak kimlik doğrulamasında verinin gerçekten o

kaynaktan gönderilip gönderilmediği araştırılmaktadır. Verinin doğruluğunun

kontrolü ise, verinin yol üzerinde herhangi bir değişime uğrayıp uğramadığıdır.

Kaynak kimlik doğrulaması ve verinin doğruluğunun kontrolü birbiriyle bağlantılı

kavramlardır. Çoğu tasarımda kaynak kimlik doğrulaması başarıya ulaştığı zaman

verinin doğruluğunun kontrolü de otomatik olarak başarıya ulaşmaktadır. Aynı

durum, tam tersi için de geçerlidir. Diğer bir kimlik doğrulama yolu ise, grup esasına

göre yapılan doğrulamadır. Bu tip kimlik doğrulamasında verinin herhanbir grup

üyesinden gelip gelmediği kontrol edilmektedir. Veri, o gruba üye olmayan herhangi

bir sistemden gönderildiği zaman grup kimlik doğrulaması başarısız olacağından bu

olay sezilebilmektedir. Bu problem alanına dahil olan diğer bir konu ise verinin

107

şifrelenerek iletilmesi ve alıcı sistemlerde deşifre edilmesidir. Bunun için genel

olarak grup anahtarları kullanılmaktadır. Kaynak sistem bilgiyi iletmeden önce

şifrelemektedir. İletilen şifrelenmiş veri, şebeke içerisinde şifreli bir şekilde

dolaşmakta ve veriyi elde eden varlıklar uygun anahtara sahip olmadığı sürece

verinin içerisinden bilgiyi elde edememektedir. Veri, gruba dahil olan alıcı sistemlere

ulaştığında, alıcı sistemlerde ilgili anahtar mevcut olduğu için deşifre işlemi kolayca

yapılabilmektedir.

Bir grupla ilgili olarak kullanılan bütün şifreleme anahtarlarına, bu anahtarlarla ilgili

varlıklarda ve şebeke cihazlarında tutulması gereken durumlara ve ilişkili diğer

güvenlik parametrelerinin bütününe “anahtarlama materyalleri” denmektedir.

Dolayısıyla anahtarlama materyallerinin yönetiminden kasıt sadece anahtarların

değil, aynı zamanda ilgili durumların ve güvenlik parametrelerinin yönetilmesidir.

Bu işin nasıl yapılacağı ikinci problem alanına girmektedir. İkinci problem alanı çok

geniş bir uzayı kapsamaktadır. Sistemlerin gruplara girebilmesi için üye kimlik

doğrulaması yapılması zorunludur. Bunun yanı sıra gruba iletim başladıktan herhangi

bir zaman sonra, sistemlerin üyeliğinin sorgulanabilir ve doğrulanabilir olması

gerekmektedir. Böylece şüpheli sistemler fark edilebilir hale gelmektedir. İletimin

yapılacağı gruba ait anahtarların dağıtılabilmesi için, sistemlerle GDAS arasında

güvenli bir iletişim kanalı kurulması konusu da bu problem alanı içerisinde yer

almaktadır. Ayrıca dağıtılmış bir mimaride koordinasyon amacıyla GDAS

varlıklarının kendi aralarında iletişimde olması gerekmektedir. Bu iletişim, tıpkı

sistemlerle GDAS varlıkları arasında olan iletişim gibi güvenli bir kanal üzerinden

yapılmalıdır. Çok hedefli iletim yapılırken herhangi bir nedenden dolayı kullanımda

olan anahtarların değiştirilmesi için çeşitli mekanizmaların geliştirilmesi

gerekmektedir. Anahtar değişimlerinin pek çok sebebi vardır. Kriptoanalizi

engellemek için periyodik olarak anahtarların değişimi veya çıkan üyelerin gelecekte

iletilecek olan veriyi deşifre edememesi için yapılan değişim bunlara örnek olarak

verilebilir. Son olarak, anahtarlama materyallerinin yönetimiyle ilgili herhangi bir

hatanın veya güvenlik açığının bulunup gerekli mercilere rapor edilebilir olması

gerekmektedir. Bununla ilgili mekanizmaların geliştirilmesi bu problem alanı

içerisine girmektedir.

108

Anahtarlama materyallerinin yönetimi ile ilgili kararların ve isteklerin güvenlik

politikaları şeklinde oluşturulması pek çok fayda sağlamaktadır. Güvenlik politikaları

temel olarak güvenlik çatısında bulunan diğer varlıkların operasyonlarıyla ilgili

kuralları belirlemek için kullanılmaktadır. Politikalarla ilgili sorunlar, üçüncü

problem alanına girmektedir. Güvenlik politikalarının güvenlik çatısı içerisinde

temsil edilebilmesi için “Güvenlik politikası sunucusu” varlıkları kullanılmaktadır.

Bu varlıklar kendi aralarında ve GDAS varlıkları ile iletişim kurarak belirlenen

politikaların uygulanmasını sağlamaktadır. Çok hedefli iletim gruplarına üye olan

sistemler için herhangi bir coğrafi kısıtlama bulunmamaktadır. Dolayısıyla üyeler

pek çok otonom sistem içerisine yayılabilmektedir. Otonom sistemler farklı merciler

tarafından yönetildiği için güvenlik politikası sunucularının nereye nasıl

yerleştirileceği ve kimler tarafından yönetileceği önemli bir konudur. Bunun için

grup politikasını belirleyen katı kuralların mevcut olması gerekmektedir. Güvenlik

politikası, çok hedefli iletim grubunu başlatan varlık (grup sahibi) tarafından ifade

edilmeli ve üyelerle müzakereler yapılarak oluşturulmalıdır. Üyelerle yapılan

müzakereler sadece kimlik kontrolünden ibaret olabilmekle birlikte pek çok ağırlıklı

seçim mekanizmasını içerebilmektedir. Sistem yöneticileri tarafından tanımlanan

güvenlik politikalarının alt seviyede güvenlik mekanizmaları tarafından anlaşılıp

uygulanabilmesi için; tanımların insan dilinden, sistemlerin anlayabileceği bir dile

çevrilmesi gerekmektedir. Grup içerisinde farklı tür sistemler olabileceğinden bu

çevrimin her zaman aynı sonucu vermesi ve bütün sistemler tarafından anlaşılabilir

olması zorunludur. İlke olarak güvenlik politikası müzakerelerinin ve çevrimlerinin

sistemler gruba üye olmaya çalışırken yapılması gerekmektedir. Çevrimleri

anlayamayan ve müzakerelere katılamayan sistemler gruba dahil olsa bile, iletilen

veriyi anlayamayacaktır. Dolayısıyla bu işlemlerin üyelerin gruba katılırken

yapılması en sağlıklı seçenektir.

6.2. Çok Hedefli Ġletimde Ġçerik Güvenliği

Çok hedefli iletim için oluşturulmuş olan güvenlik çatısında, içerik güvenliği büyük

önem taşımaktadır. İçerik güvenliği pek çok alt bölüme ayrılarak incelenmektedir.

İlk bölüm grup anahtar yönetimidir. Sistemlerin iletilen veriyi eksiksiz bir şekilde

alabilmesi için grup temelinde ne tür şifreleme mekanizmaları kullanılması gerektiği,

109

bu mekanizmaların hangi varlıklara ne şekilde atanacağı ve grup üyelik

değişimlerinin güvenlik çerçevesinde nasıl ele alınacağı gibi anahtar yönetimini

ilgilendiren sorumlulukların tamamı, grup anahtar yönetimi altında toplanmaktadır.

Çok hedefli iletim grubuna iletim yapmak isteyen her sistemin grupla ilgili güvenlik

varlıklarına kimliğini doğrulaması gerekmektedir. Kimliği doğrulanan kaynaklar

daha sonra erişim kontrolüne tabi tutulmaktadır. Sadece bu mekanizmaları başarıyla

geçen sistemler kaynak görevi görebilmektedir. Erişim kontrolü, alıcılar için de

uygulanmaktadır. Bunun nedeni dağıtım ağacının kontrol altında tutulmak

istenmesidir. Grup üyeleri, ancak anahtarlama mekanizmalarını işletip grupla ilgili

anahtarları elde ettikten sonra iletilen veriyi deşifre edebilmektedir. Üyelerin deşifre

edilen bilgiyi sadece kendisi için kullanması gerekmektedir. Ancak her zaman durum

bu şekilde olmamaktadır. Bazı sistemler deşifre ettiği veriyi kendine çıkar sağlamak

amacıyla üçüncü taraflarla paylaşmaktadır. Bu ihlale “bilgi korsanlığı” denmektedir.

Parmak izi kullanımı sayesinde iletilen veri içerisine alıcı sisteme özgü gizli bilgiler

yerleştirilmekte ve ileride bilgi korsanlığı yapıldığında bu sayede hangi sistem

tarafından paylaşıldığı anlaşılabilmektedir. İçerik güvenliği konusu altında incelenen

son konu çok hedefli iletimde güvenlik politikalarıdır. Güvenlik politikaları

güvenlikle ilgili bütün parametrelerin ve mekanizmaların tek bir elde toplanması

olarak açıklanmaktadır. Güvenlik politikaları, en üst seviyede bulunan katmanlar

tarafından belirlenmekte ve yukarından aşağıya doğru uygulanmaktadır.

6.2.1. Grup Anahtar Yönetimi

Grup anahtar yönetimi, çok hedefli iletim grubunu ilgilendiren kriptografik

anahtarların ve bunlara ilişkin durumların tamamının nasıl yönetileceğini düzenleyen

mekanizmaların bütününü içermektedir. Anahtarlama, genel olarak bütün grup

üyelerine tek bir anahtarın dağıtımıyla sağlanmaktadır. Kaynaklar, veriyi sadece alıcı

sistemlere dağıtılan anahtar tarafından deşifre edebilecek şekilde şifrelemektedir.

Şifrelenmiş veri, dağıtım ağacı üzerinden alıcılara ulaştırılmakta ve daha sonra

deşifre işlemi sayesinde gerçek bilgi elde edilmektedir. İlgili anahtarların dağıtımının

sorumluluğu anahtar dağıtıcısına (Key Distributor, KD) verilmiştir. Genelde KD

işlevleri, GDAS içerisinde bulunmaktadır. Bu mantık, ilk olarak 1980’lerde

konferans anahtar dağıtımında kullanılmıştır [67]. Konferans anahtar dağıtımında,

alıcıların birbirlerine güven duymadığı düşünülerek grup anahtarının bütün

110

alıcılardan alınan anahtar parçalarıyla oluşturulması sağlanmıştır. Bu uygulamalar,

konferans oturumları için ideal olsa bile, alıcı sayısının çok daha fazla olduğu çok

hedefli iletim grupları düşünüldüğünde elverişsiz hale gelmektedir. Konferans

anahtar dağıtımını grup anahtar yönetiminden ayıran en önemli nokta; grup anahtar

yönetiminin dinamik bir ortamda pratik bir şekilde yapılıyor olmasıdır. Ortama ayak

uydurulabilmesi için, çok hedefli iletim grubunun ek anahtarlarla ilişkilendirilmesi

gerekmektedir. Bu anahtarlar, grup iletişimini güvenli hale getirmek için kullanılan

anahtarın güvenliği için kullanılmaktadır. Çok hedefli iletim için oluşturulmuş olan

güvenlik çatısında yer alan anahtar yönetimi modelinin temelini grup güvenlik

ilişkileri oluşturmaktadır.

6.2.1.1. Grup Güvenlik ĠliĢkileri (GSA) Modeli ve Yönetimi

IETF bünyesinde oluşturulmuş olan güvenlik çatısında, grup anahtar yönetimi ile

ilgili varlıklar ve aralarındaki ilişkiler şekil 6.3’te gösterilmektedir.

KD

Kaynak

Üye

Alıcı Üye

Alıcı Üye

KD

Anahtar & SA yönetimi

Kontrol kanalı

Veri kanalı

Merkezi Dağıtık

Şekil 6.3 – Grup anahtar yönetimi modeli

Şekil 6.3’te ölçeklenebilirliğin arttırılması için merkezi ve dağıtık olmak üzere iki

farklı mimari oluşturulmuştur. Sistemler, gruba üye olmak amacıyla en yakındaki

veya yönetimsel olarak atanan bir GDAS ile iletişime geçmektedir. Anahtar dağıtımı,

GDAS’ler üzerinden yapılmaktadır. Çok hedefli iletim şekilde tek yönlü oklar olarak

gösterilmektedir. Bütün üyelerin, ilgili GDAS ile anahtar yönetimi ve SA yönetimi

için kontrol kanalları oluşturması gerekmektedir. Kontrol kanalları şekilde noktalı

111

oklar olarak gösterilmektedir. Burada SA (Security Association), güvenli iletimin

sağlanması adına kullanılan hizmet ve mekanizmaların tanımlanması için gereken

bütün parametrelerin bir araya getirildiği ve iki veya daha fazla sistem tarafından

müzakere edilen güvenlik ilişkilendirmeleri olarak tanımlanmaktadır. SA’lar tek

yönlüdür ve her güvenlik protokolü için farklıdır. İki veya daha fazla sistemin,

güvenli haberleşmeyi nasıl gerçekleştireceği SA’lar sayesinde belirlemektedir. Grup

anahtarları, şekilde çift yönlü oklar olarak gösterilmekte olan anahtar ve SA yönetim

kanalları sayesinde dağıtılmakta ve yönetilmektedir. GDAS ve üyeler arasında

kullanılmakta olan kontrol kanalları çeşitli komutların işletilmesi, hatırlatıcıların

gönderilmesi ve acil durumların bildirilmesi için kullanılmaktadır. Protokoller

hazırlanırken, kontrol kanallarının güvenilir olduğu varsayılmaktadır.

Grup anahtar yönetimi ile ilgili çalışmalar, Internet anahtar yönetiminden [68-72]

esinlenerek yapılmıştır. Grup anahtar yönetimi, Internet anahtar yönetimine ek olarak

yeni özellikler içermektedir. Buna örnek olarak grup anahtar materyallerine ilişkin

müzakere olmaması ve aksine bu materyallerin direk olarak üyelere yollanması

gösterilebilir. Dolayısıyla Internet anahtar yönetimiyle ilgili çalışmalar çok hedefli

iletim ile ilgili yapılmış olan güvenlik çalışmalarıyla [63-64,73] birleştirilerek grup

anahtar yönetimi için farklı bir çatı oluşturulmuştur. Grup anahtar yönetiminin tam

olarak açıklanabilmesi için öncelikle Internet anahtar yönetiminin anlaşılması

gerekmektedir. Güvenli olmayan bir şebeke üzerinde güvenli iletişim yapılabilmesi

ve saldırılara karşı korunulabilmesi için, kimliği doğrulanmış varlıklar arasında

anahtarların ve güvenlik parametrelerinin belirlenmesi ve değiş tokuş edilmesi

gerekmektedir. İstenen güvenlik, senaryodan senaryoya değişim gösterdiği için

güvenlik seviyesinin seçilebilir olması gerekmektedir. Bunun sağlanabilmesi için

Internet anahtar yönetimi, pek çok değiş tokuş (excgange) tipi sunmaktadır. Hali

hazırda kullanılmakta olan Internet anahtar yönetiminde bulunan SA yönetimi dengi

denginedir (peer-to-peer) ve şekil 6.4’te gösterilmektedir [10].

İsteği

başlatan eş

Yanıt veren

SA SA

Şekil 6.4 – İki sistem arasındaki güvenlik ilişkisi

Internet güvenlik mimarisinde tanımlanan SA’lar tek yönlü olarak tanımlanmaktadır

[75] ve güvenlik parametre indeksi (Security Parameter Index, SPI) tarafından

112

belirlenmektedir. Grup anahtar yönetiminin oluşturulabilmesi için Internet anahtar

yönetiminden alınması gereken özellikler aşağıda sıralanmaktadır.

1. Ortadaki adam (man-in-the-middle), bağlantı korsanlığı (connection-

hijacking), tekrar gönderim (replay), yansıma (reflection) ve DoS (hizmet

durdurma)saldırılarına karşı koruma sağlanması

2. Anahtar oluşturulmasında, güvenlik düzeyinin seçilebilir olması

3. Ortak anahtar ve PKI gibi birden fazla kimlik doğrulaması

mekanizmasının desteklenmesi

4. Yeni güvenlik mekanizmalarının kullanılabilmesi için ileriye dönük geçiş

yolunun açık olması

5. Yerel politikalara göre SA kurulumunun sağlanabilmesi için tek bir

anahtar yönetim çatısının kullanımı

Internet güvenlik mimarisi için oluşturulmuş ISAKMP [70] ve IKE [68] içerisinde

bulunan pek çok mekanizma; GKMP, LKH, OFT, GSAKMP, NARK ve MARKS

gibi pek çok grup anahtar yönetimi protokolünde kullanılmaktadır [73,76-81]. Bu

protokollerde, her bir üye için eşsiz bir anahtar kullanılmaktadır. Bu anahtarlar

anahtar sunucusu ile noktadan noktaya gerçekleştirilen bağlantılar sayesinde

dağıtılmaktadır. Potansiyel bir üye için kimlik doğrulaması yapılması ve anahtarların

dağıtılabilmesi için üyenin anahtarlama materyallerini sunucudan çekmesi

gerekmektedir. Buna ek olarak, değişimlerin üyelere bildirilebilir olması

gerekmektedir. Bunun için çok hedefli iletim kullanılması, sunucular üzerindeki

yükü azaltacaktır. Grupların tekrar anahtarlanması ve anahtar yönetimi için pek çok

algoritma oluşturulmuştur [73,78-79,81]. Çok yönlü ve yetkin bir grup anahtar

yönetimi mimarisinin ileriye dönük olarak inşa edilebilmesi için, bu algoritmalardan

pek çoğunu destekliyor olması gerekmektedir. Anahtar güncellemelerinin dağıtılması

itme (push) hizmeti olarak sunulmaktadır. Güncellemeler için çok hedefli iletimin

kullanılması, periyodik güncellemeler sırasında GDAS varlığının yükünü

hafifletmekte ve aynı zamanda grup üyelerinin sayısına olan bağımlılığı minimuma

indirmektedir. Böylece ölçeklenebilirlik arttırılmaktadır. Çok hedefli iletim

gruplarının üye sayısında herhangi bir kısıtlama yoktur ve bu sayı sunulan hizmete

göre çok büyük farklılıklar göstermektedir. Grup anahtar yönetiminden beklenen,

gruplara katılımın ve gruptan ayrılmanın kalabalık gruplar için güvenli bir şekilde

yapılmasıdır [63].

113

Internet anahtar yönetimi, bir uygulamayı anahtarlayabilmek için iki adet SA’ya

ihtiyaç duyarken, grup anahtar yönetiminde bu sayı (en az) üçe çıkmaktadır. Bu

SA’lar, grup üyesiyle GDAS arasında olan bir çekme SA’sı, GDAS ile bütün üyeler

arasında olan bir itme SA’sı ve kaynaklar ile alıcılar arasında olan ve verinin

korunması için kullanılan bir veri SA’sıdır. Birden fazla kaynağın olduğu gruplarda

bütün kaynaklar için tek bir SA veya her bir kaynak için ayrı ayrı SA’lar

kullanılabilmektedir.

İlk dönemlerde grup anahtar yönetiminde, IKE ve ISAKMP içerisinde kullanılan

soyutlamaların kullanılması tavsiye edilmiştir [74]. İlerleyen dönemlerde böyle bir

yapıdan yola çıkılmasının mantıklı olduğu fakat yeterli olmayacağı anlaşılmış ve

GSA tanımlanmıştır. Grup güvenlik ilişkileri (Group Security Association, GSA)

tanımlanırken Internet SA’larından da faydalanılmaktadır. GSA, Internet SA

yapısında bulunan dört özelliği kullanmaktadır. Bu özellikler aşağıda

listelenmektedir.

1. SA içerisinde seçiciler bulunmaktadır. Bu seçiciler kaynak ve hedef

taşıma adreslerini tanımlamaktadır.

2. SA içerisinde özellikler tanımlanmaktadır. Bu özelliklere örnek olarak

SPI ve kimlik bilgileri verilebilir.

3. SA içerisinde kriptografik politika tanımlanmaktadır. Bu politika

sayesinde kullanılması gereken algoritmalar, anahtar yaşam süreleri ve

anahtar uzunlukları gibi parametreler belirlenmektedir.

4. SA içerisinde anahtarlar bulunmaktadır. Bu anahtarlar kimlik

doğrulaması, şifreleme ve sayısal imza işlevleri için kullanılmaktadır.

Bunlara ek olarak GSA’da grup politikası bilgileri bulunmaktadır. Bu bilgilere örnek

olarak gruba üye olabilmek için gereken imzalanmış kimlik bilgileri veya grubun

üyeleri değiştiği zaman nasıl bir yol izleneceği, bir başka deyişle anahtarların

değiştirilip değiştirilmeyeceği bilgileri verilebilir. GSA, birden fazla SA’dan

oluştuğu için SA’lar GSA içerisinde öznitelikler olarak saklanmaktadır.

Internet grup anahtar yönetiminde olması gereken özellikler aşağıda liste olarak

sıralanmaktadır [74].

114

1. Internet tek hedefli anahtar yönetimi içerisinde bahsedilen beş özelliği

içermesi

2. IRTF güvenli çok hedefli iletim referans çatısına [63] uygun olması

3. Birden fazla kaynağın olduğu durumlarda her bir kaynak için farklı SA’lerin

kullanılabilmesine izin vermesi

4. Güvenlik politikası ve anahtarlama materyallerinin dağıtımı için, üyeler

tarafından başlatılan çekme ve GDAS tarafından başlatılan itme

operasyonlarına olanak tanıması

5. Çok hedefli iletim gruplarının özelliklerine göre güvenlik yaptırımlarının

değişik seviyelerde uygulanmasına izin vermesi.

1. Kategori SA

(Çekme)

Kaynak

Üye

Başlangıç

kurulumu

(Tek hedefli)

GDAS

Alıcı Üye

Kontrol mesajları

(Çok hedefli)

2. Kategori SA

(İtme)

3. Kategori

SA

Veri

mesajları

(Çok hedefli)

Başlangıç

kurulumu

(Tek hedefli)

Şekil 6.5 – GSA yapısı

Şekil 6.5’te GSA yapısı, içerisinde bulunan SA’lar ile birlikte gösterilmektedir.

Şekildeki her bir ok tek yönlü bir SA’yı göstermektedir. GSA içerisinde toplam üç

farklı SA kategorisi tanımlanmıştır. Birinci kategori SA (SA1), grup üyeleri

tarafından başlatılmaktadır. SA1’in kullanım amacı diğer kategorilerde bulunan

SA’ların korunması ve GDAS’den grupla ilgili GSA bilgilerinin alınmasıdır. Bir

başka deyişle bu SA; potansiyel bir üyenin gruba üye olma isteği veya daha önce

grup üyesi olup da herhangi bir nedenden dolayı gruptan kısa bir süreliğine kopan

üyenin anahtarlar hakkındaki bilgisinin tazelenmesi için kullanılmaktadır. GDAS,

kendisine bağlı olan her bir üye için bir SA1 bulundurmak durumundadır.

GDAS’den çekilen bilgiler içerisinde anahtarlar ve güvenlik politikası bilgileri

115

bulunmaktadır. Bu 3. kategori SA’ya tekabül etmektedir ve bu SA; üyeler ve GDAS

arasında müzakere edilmeden direk olarak üyelerle paylaşılmaktadır.

3. kategori SA’nın GDAS tarafından değiştirilebilmesi için 2. kategori SA

kullanılmaktadır. Bu işlem bir itme işlemi olduğu için 2. kategori SA’ya (SA2) itme

SA’i denmektedir ve bu SA, kontrol mesajları için kullanılmaktadır. Anahtarların

periyodik olarak değiştirilmesi kontrol mesajlarına bir örnektir. SA2, GDAS ve

üyeler arasında müzakere edilmemekte aksine GDAS tarafından dayatılmaktadır. Bir

çok hedefli iletim grubu, anahtar yönetim mimarisine göre birden fazla SA2’ye sahip

olabilmektedir. İkinci kategori SA’nın dağıtımının ölçeklenebilir olabilmesi için, pek

çok algoritma oluşturulmuştur [73,78-82].

Bir sistem, gruba üye olma isteğini belirtip üyelik işlemleri tamamlandıktan sonra

ilgili anahtarları elde etmekte ve çok hedefli iletim içerisine dahil olmaktadır. Gruba

yeni dahil olan bir sistemin üyelik zamanından önce iletilmiş verileri deşifre edip

edemeyeceğine karar verilmesi gerekmektedir. Pek çok uygulama ve hizmet buna

izin vermemektedir. Bu tür denetime geriye dönük güvenlik denmektedir. Aynı

şekilde gruptan herhangi bir nedenden dolayı ayrılan üyelerin daha sonra iletilen

veriyi deşifre edememesi istenmektedir. Bu denetime ileriye dönük güvenlik

denmektedir.

Grup güvenlik ilişkileri modeli, grup anahtar yönetimi için oluşturulmuş bütün

mimarilerin ve protokollerin temelini oluşturmaktadır.

6.2.1.2. Grup Anahtar Yönetim Mimarileri

Grup anahtar yönetim mimarileri, çok hedefli iletimin güvenli bir şekilde

işletilebilmesi için büyük önem taşımaktadır. Grup anahtar yönetimi mimarileri; grup

anahtar yönetimiyle ilgili varlıkların uygun yerde kullanılması, işlevlerinin

tanımlanması, sorumluluklarının belirlenmesi ve diğer varlıklarla olan iletişiminin

düzenlenmesi amacıyla oluşturulmaktadır. Çok hedefli iletimin kullanım alanının çok

geniş olduğu düşünüldüğünde, grup anahtar yönetimi için oluşturulan mimarilerin,

protokollerin ve algoritmaların sadece belirli bir uygulama alanı için müsait olduğu

ve diğer alanlarda işe yaramadığı unutulmamalıdır.

116

Mimarilerin oluşturulması sırasında pek çok çalışma yapılmıştır. Çalışmalar genel

olarak incelendiğinde mimariler tasarlanırken göz önünde bulundurulması gereken

kıstaslar aşağıda sıralanmaktadır.

1. Çok hedefli iletim gruplarının dayanıklılığı ve güvenilirliği: Aktif üyeleri

olan bir grubun yaşamını devam ettirilebilmesi çoğu zaman herşeyden

daha önemlidir. Anahtar yönetim varlıkları kullanım dışı kaldığında

üyelerin bundan etkilenmemesi için yönetim varlıklarının mimariye

yedekli olarak yerleştirilmesi gerekmektedir.

2. Üyelerin coğrafi dağılımı ve üyelik yoğunluğu: Üyelerin şebeke

coğrafyası içerisinde nerede ve ne kadar yoğun olduğu, sistemlerin sabit

mi yoksa mobil mi olduğu gibi özellikler mimarilerin oluşturulmasında

zor bir tasarım problemi olarak ortaya çıkmaktadır.

3. Üyeliğin dinamiği: Gruba girişlerin ve gruptan ayrılmaların frekansı ve

üyelik değişiminin ortalama değeri trafik anahtarlarının tasarımı ve

kullanımı açısından önemlidir.

4. Veri akışının izlediği yol: Verinin yol üzerinde deşifre edilip tekrar

şifrelenmesi gerektiğinde KD varlıkların nasıl konumlandırılacağı önem

taşımaktadır.

5. Güvenilir çok hedefli iletim varlıkları: Mimariler oluşturulurken güvenilir

çok hedefli iletim varlıklarından yararlanılabilmektedir.

6. Güvenin varlıklar arasında dağıtımı: Güvenlik bir çok hedefli iletim

mimarisinde anahtarlama yönetiminin yardımcı varlıklara aktarımı önem

taşımaktadır. Çoğu uygulamada içerik sağlayıcı ile çok hedefli iletim

altyapısını sunan varlıklar (ISS’ler) farklıdır. Anahtar yönetimi için

oluşturulan varlıkların nerede olacağı, içerik sağlayıcı ile ISS’ler

arasındaki güven ilişkisinin nasıl olduğuna göre değişmektedir. Kimi

durumlarda güven ilişkisi olmamakta, kimi durumlarda ise içerik dahi ISS

tarafından sağlamaktadır.

7. Politik sebepler: Fransa gibi bir takım ülkeler kriptoloji teknolojisinin

farklı ülkelere ihracını yasaklamaktadır. Böyle bir durumda anahtar

yönetiminin nasıl yapılacağı ve hangi tür anahtarlama mekanizmalarının

kullanılacağı bir soru işaretidir. Buna ek olarak ekonomik sebepler de

mimariyi etkilemektedir.

117

Grup anahtar yönetimi için pek çok mimari oluşturulmuştur. Bunlardan en önemlileri

IKAM [83] ve Iolus’tur [84]. İlerleyen bölümlerde bu mimariler açıklanmaktadır.

Etki Alanı İçi Grup Anahtar Yönetimi Protokolü [83], (Intradomain Group Key

Management Protocol, IKAM) Internet’in iki katmanlı hiyerarşisi göz önüne alınarak

oluşturulmuştur. IKAM içerisinde sınırları, tercih edilen gruplamaya göre değişen

bölgeler tanımlanmaktadır. Bu sınırlar, kimi zaman otonom sistemin bütününü temsil

etmekte, kimi zaman ise otonom sistemlerin içerisinde oluşturulan alanları temsil

etmektedir. IKAM, bölgeler içerisindeki grup anahtar yönetimini ve bölgeler arası

değiş tokuşları düzenleyen bir mimaridir. Gruba üye olan sistemler, sadece tek bir

bölge içerisinde bulunmaktadır. Grubun alanlara ayrılması sayesinde

ölçeklenebilirlik arttırılmaktadır. Her bir çok hedefli iletim grubu için, farklı bir

yönetimsel çok hedefli iletim grubu kurulmaktadır. Bu grup kullanılarak, kontrol

mesajları ve anahtar yönetimiyle ilgili mesajlar üyelere ulaştırılmaktadır. Her bir çok

hedefli iletim grubu ve yönetimsel kontrol grubu çifti için eşsiz bir anahtar

kullanılmaktadır. IETF tarafından belirlenen güvenlik çatısında yer alan anahtar

yönetim düzleminde bölgeler, iki katmanlı hiyerarşiye göre düzenlenmiştir. Üst

katmanda jonksiyon (trunk) bölgesi olarak isimlendirilen tek bir bölge

bulunmaktadır. Alt katmanda jonksiyon bölgesine bağlanan yaprak bölgeler yer

almaktadır. Yaprak bölgeler kendi içlerinde alanlara ayrılmaktadır. Her bölge

kendine ait anahtar yönetimi protokolünü çalıştırabilmektedir. Her bölgenin kendine

ait bir anahtarları mevcuttur. IKAM, yaprak bölgelerdeki grup anahtar yönetim

mimarisi için kullanılmaktadır. IKAM içerisinde anahtarların veriye nasıl

uygulanması gerektiği tanımlanmamaktadır. Bunun sebebi bu işlevlerin farklı bir

problem alanına (birinci problem alanı) girmesidir. Ancak bunun için IPSec [75]

kullanılabilmektedir.

IKAM içerisinde kullanılan varlıklar ve bölgeler şekil 6.5’de gösterilmektedir. Bir

bölge pek çok alana ayrılmıştır. Böylece anahtar yönetimiyle ilgili işlevler birden

fazla varlık tarafından paylaşılmakta ve ölçeklenebilirlik sağlanmaktadır. Bölge

genelindeki anahtar yönetiminden bölge anahtar dağıtıcısı (Domain Key Distributor,

DKD) sorumludur. Çok hedefli iletimin güvenli bir şekilde yapılabilmesi için bölge

sınırları yönetimsel olarak belirlenmiş [37] alanlara bölünmüştür. Bu alanların

içerisindeki anahtar yönetiminden “alan anahtar dağıtıcıları” (Area Key Distributor,

118

AKD) sorumludur. Yönetimsel işlevler için oluşturulan grupların adreslerinin

belirlenmesi için bölge ve alanlara göre çeşitli varlıklar kullanılabilmektedir. Bu

işlevleri, bölge esasında “bölge çok hedefli iletim tahsis varlığı” (Domain Multicast

Address Allocation Entity, DMAAE), alan esasında ise “alan çok hedefli iletim adres

tahsis varlığı” (Area Multicast Address Allocation Entity, AMAAE) üstlenmiştir.

DKD DMAAE

AKD AKD AKD

m m m m m mm m m

TE

DKD Bölge Anahtar Dağıtıcısı

m

AKD Alan Anahtar Dağıtıcısı

Grup üyesi

TE Çevirici Varlık

DMAAE Bölge ÇHİ Adres Tahsis Varlığı

Bölge

Alan

Şekil 6.5 – IKAM Bölge yapısı

Anahtar dağıtıcıları arasındaki koordinasyonun sağlanabilmesi için, bölge

içerisindeki bütün anahtar dağıtıcılarının üyesi olduğu bir grup kullanılmaktadır. Bu

gruba “bütün-KD-grubu” denmektedir ve bu grup çok hedefli iletim gruplarında

üyeler olsun veya olmasın varlığını her zaman sürdürmektedir. Bu grup bölge

esasında olan ve KD’lerin birbiriyle iletişimini sağlamak için DKD tarafından

kurulan bir gruptur. Gruba üyelik sadece o bölge ile sınırlandırılmıştır. DKD varlığı,

AKD varlıkları ile tek hedefli olarak veya bütün-KD-grubu’nu kullanarak

haberleşmektedir. AKD varlıkları, kendi alanlarındaki üyelerle güvenli tek hedefli

iletişim kanalları kurarak haberleşmektedir. Çok hedefli iletim grubunun bölge

dışında da üyelerinin olduğu durumlarda güvenlik dönüşümlerini üstelenen varlıklar

devreye girmektedir. Bu varlıklar bölgenin sınırlarında bulunmakta ve çevirici varlık

(Translating Entity, TE) olarak isimlendirilmektedir. IKAM mimarisinde, güven

ilişkileri sadece o bölge içerisindeki varlıklarla sınırlı kalmaktadır. Bölge içerisindeki

bütün varlıklar DKD varlığına güvenmektedir. Aynı şekilde bir alan içerisinde yer

alan bütün üyeler o alandan sorumlu olan AKD varlığına güvenmektedir. Şekil

6.6’da IKAM mimarisinin kullanıldığı bir Internet topolojisi gösterilmektedir.

Şekilde anahtar sunucularının (KD) potansiyel olarak konabileceği yerler

gösterilmektedir. KD varlıkları; kaynağın içerisinde bulunduğu etki alanı içerisinde

119

veya alıcıların içerisinde bulunduğu bir otonom sistem içerisinde

konumlandırılabilmektedir. Buna ek olarak, KD’nin bulunmadığı etki alanları, bağlı

oldukları erişim ISS’inden bu hizmeti alabilmekte veya bunun yerine güvenlik

hizmetleri sunan bir ISS ile anlaşmaktadır.

AS

AS

AS

AS

ISS

ISS

ISS

ISSISS

AS

ISS

KA

A

A

A

A

A

A

A

A

AAA

KD

KD

KD

KD

Kaynağın etki

alanındaki KD

Erişim

ISS‟indeki KD

Güvenlik hizmetleri

sağlayıcısındaki KD

Alıcı etki

alanındaki KD

Bütün-KDler grubu Çok hedefli iletim

dağıtım ağacı

Şekil 6.6 – IKAM Internet topolojisi

IKAM mimarisi içerisinde kontrol gruplarının kullanımındaki amaç, anahtarlama

materyalleri ile ilgili yönetimsel haberleşmenin yapılabilmesidir. Bir çok hedefli

iletim grubu için, o bölgede üyeler olduğu sürece kontrol grubu varlığını

sürdürmektedir. Buna ek olarak herhangi bir sistem bir gruba üye olmadan önce o

grup ile ilişkilendirilmiş olan kontrol grubuna üye olmak zorundadır. Sistemin, veriyi

deşifre edecek anahtarları elde etmeden gruba dahil olmasının bir manası yoktur.

IKAM mimarisinde pek çok anahtar kullanılmaktadır [83]. Bu anahtarlardan en

önemlisi çok hedefli iletim grubuna gönderilen verinin deşifre edilmesinde kullanılan

çok hedefli iletim anahtarıdır (Mkey). Bu anahtar sadece izinli üyelerle paylaşıldığı

için alıcı erişim kontrolü uygulanabilmektedir. DKD tarafından o bölge içerisinde

bulunan bütün gruplar için bir çok hedefli iletim anahtarı tahsis edilmektedir. Alanlar

içerisinde üyesi bulunan bütün çok hedefli iletim gruplarının bir kontrol grubuyla

120

ilişkilendirilmesi gerekmektedir. Bu kontrol grupları, AKD varlıkları tarafından

oluşturulduğu için grup trafiğini şifrelemek için kullanılması gereken anahtar AKD

tarafından belirlenmektedir. Bu sayede kontrol grubuna iletilen veri sadece ilgili alan

içerisindeki ilgili üyeler ve AKD tarafından deşifre edilmektedir. Bunun için

kullanılan anahtar, alan grup anahtarı olarak isimlendirilmektedir. Ayrıca bütün-KD-

grubu’na ilişkin trafik, DKD tarafından belirlenen “bütün KD anahtarı” sayesinde

şifrelenmektedir. Sistemin, bir çok hedefli iletim grubuna üye olmak istediğinde

öncelikle içerisinde bulunduğu alanın AKD varlığı ile güvenli bir tek hedefli iletişim

kanalı kurması gerekmektedir. Bu kanalın kurulabilmesi için SA’nın oluşturulması

gerekmektedir. Bu SA, GSA modelindeki birinci kategori SA’ya denk gelmektedir.

Güvenli iletişim kanalı kurulduktan sonra bu kanal sayesinde, grupla ilgili anahtar

materyalleri ve kontrol grubu bilgileri sistem ile paylaşılmaktadır. Her grubun alanlar

içerisinde bir kontrol grubu ile ilişkilendirilmesi fikri pek çok avantajı beraberinde

getirmekte ancak çok hedefli adreslerin kullanımını da aynı oranda arttırmaktadır.

Adres kullanımının optimum şekilde düzenlenebilmesi için üç farklı yol

izlenmektedir. İlk yol alan içerisinde her bir çok hedefli iletim grubu için farklı bir

kontrol grubu olmasıdır. Bu şekilde çok hedefli iletim adresleri çoğu zaman boşa

harcanmaktadır. Buna ek olarak bunun için her bir alan içerisinde AMAAE

varlığının bulunması gerekmektedir. İkinci yol, alan içerisindeki bütün çok hedefli

iletim grupları için tek bir kontrol grubunun ayrılmasıdır. Bu şekilde tek bir kontrol

grubu, o alan içerisindeki bütün üyeler tarafından paylaşılmaktadır Böyle bir yapıda

çok hedefli iletim adresleri minimum olarak kullanıldığı için AMAAE varlıklarına

ihtiyaç duyulmamaktadır. Gruplara özgü iletişim, gruplara özgü anahtarlar

kullanılarak sağlanmaktadır. Üye sistemler, kendi gruplarıyla ilgili olmayan kontrol

trafiğini almakta fakat deşifre edememektedir. Bu yolla adres kullanımı azaltılsa dahi

çeşitli sorunlar ortaya çıkmaktadır. Örneğin kontrol trafiği, ilgili olmayan sistemlere

de ulaştırıldığı için bandgenişliği boşa harcanmaktadır. Ayrıca üye olmayan sistemler

şifreli trafiği almakta olduğu için kriptoanaliz tehdidi gündeme gelmektedir. Adres

kullanımı ile ilgili kullanılan üçüncü ve son yol, ilk iki yolun birlikte kullanılmasıyla

oluşturulan yoldur. Böylece birden fazla çok hedefli iletim grubuna üye olan

sistemler tek bir kontrol grubu ile eşleştirilebilmektedir. Ayrıca kriptoanaliz tehdidi

de bu sayede azaltılmaktadır.

121

Çok hedefli iletim anahtarı, alan grup anahtarı ve bütün-KD-grubu anahtarları, gruba

yönelik olarak kullanılmakta olan simetrik ve özel kriptografik anahtarlardır. Bu

anahtarlara ek olarak IKAM mimarisinde, sadece iki varlık arasında kullanılan iki

farklı anahtar mevcuttur. Bunlardan ilki, o alan içerisindeki üye ile alandan sorumlu

AKD arasında kullanılmakta olan üye özel anahtarıdır (member private key). Alan

içerisindeki bütün üyelerin AKD ile paylaştığı eşsiz bir üye özel anahtarı mevcuttur.

Bu anahtar ve ilgili SA, sistemler gruplara üye olmadan oluşturulmaktadır. İkinci

anahtar ise her bir AKD ile DKD arasında kullanılan anahtardır. Bu anahtar, AKD

özel anahtarı (AKD private key) olarak isimlendirilmektedir. Bu anahtar ve ilgili SA,

tıpkı üye özel anahtarı ve SA’sı gibi uzun vadelidir ve bölge içerisinde üye

bulunmasından önce oluşturulmaktadır.

Çok hedefli iletim gruplarının kurulması için ilk olarak o bölge içerisinde bulunan bir

sistemin ilgili üyelik protokolünü (örneğin IGMP) kullanarak üyelik isteğini

bildirmesi gerekmektedir. Daha sonra, bu isteğin yönlendirme altyapısına iletilmesi

gerekmektedir. İlgili sistem daha önceden yapmadıysa, kendi alanından sorumlu olan

AKD ile bir SA oluşturmalı ve üye özel anahtarını edinmelidir. Daha sonraki adımlar

iki bölüme ayrılmıştır. İlk bölümde çok hedefli iletim anahtarı dağıtılmakta ve ikinci

bölümde ise alan grup anahtarı dağıtılmaktadır. Grubun kurulmasını isteyen sistem,

grubu DMAAE yardımı ile kurmaktadır. DMAAE, isteği başlatan sisteme, imzalı

olarak, çok hedefli iletim grup adresini, grup kimliğini ve isteği başlatan sistemin

kimliğini göndermektedir. Bir sonraki adımda sistem, çok hedefli iletim grup

güvenlik ilişkileri (MGSA) özelliklerini seçmekte ve bunları DMAAE’den aldığı

imzalı bilgilerle birlikte AKD’ye yollamaktadır. Sistem ayrıca AKD’den yeni bir çok

hedefli iletim anahtarı talep etmektedir. Bütün bu işlemler AKD’ye tek bir mesaj

yollanarak iletilmektedir. Bu mesajda DMAAE’den alınan parametreler, MGSA ve

erişim kontrol listesi bulunmaktadır. Özetlemek gerekirse bu mesaj, çok hedefli

iletim grup adresini, grup kimliğini, grubu başlatan sistemin kimliğini, MGSA

bilgilerini, tekrar anahtarlama periyodunu ve erişim kontrol listesini içermektedir.

Üçüncü adımda AKD, grubu başlatan sistemden aldığı bilgileri DKD’ye

iletmektedir. Bu iletim güvenli bir kanaldan yapılmaktadır. DKD, bu bilgileri

aldıktan sonra dördüncü adıma geçilmektedir. DKD, öncelikle aldığı mesajda

DMAAE ile ilgili olan kısımların doğruluğu için DMAAE varlığının imzasını

kontrol etmektedir. Bu kontrol başarıya ulaştıktan sonra, MGSA için grup güvenlik

122

parametre indeksi (GSPI) ve çok hedefli iletim anahtarı kimliği (MkeyID) DKD

tarafından oluşturulmaktadır. Daha sonra bütün grup parametreleri DKD tarafından

imzalanmaktadır. Bu parametreler; çok hedefli iletim adresi, grup kimliği, grubu

başlatanın kimliği, tekrar anahtarlama periyodu, erişim kontrol listesi, MGSA, çok

hedefli iletim anahtarı (Mkey), çok hedefli iletim anahtarı kimliği (MkeyID) ve

zaman damgasıdır. Dördüncü adımın son bölümünde ise DKD, bu bilgileri bütün

AKD’ler ile paylaşmaktadır. Bu işlem bütün-KD-grubu veya tek hedefli iletim

kullanılarak yapılmaktadır. Bu bilgilerin sadece ilgili AKD’lere değil de bütün

AKD’lere dağıtılmasındaki amaç, farklı alanlarda yeni üyelerin ortaya çıkması

durumunda verilecek cevabın hızlandırılması ve AKD’lerin kendi aralarında yedekli

kullanılmasına olanak tanınmasıdır.

Alan grup anahtarlarının dağıtımı, üç farklı adımdan oluşmaktadır. Grubu başlatan

sistemin içerisinde bulunduğu alandan sorumlu olan AKD, DKD’den bilgileri

aldıktan sonra çok hedefli iletim grubunu bir kontrol grubu ile eşleştirmektedir.

AKD, çok hedefli iletim grubu için, alan kontrol grubu adresini, kontrol grubu

kimliğini ve grubu başlatan sistemin bulunduğu alanın kimliğini tutmakla

yükümlüdür. Daha sonra AKD, alan grup güvenlik ilişkileri (AGSA) özelliklerini

belirlemekte ve AGSA için bir GSPI, alan grup anahtarı ve bu anahtarın kimliğini

oluşturmaktadır. Bu parametrelerin imzalanması sonucu ilk adım tamamlanmaktadır.

İmzalanan parametreler; çok hedefli iletim grup adresi, grup kimliği, alana özgü

kontrol grubu adresi, kontrol grubu kimliği, AKD’nin kimliği, tekrar anahtarlama

periyodu, AGSA, alan grup anahtarı, bu anahtarın kimliği ve zaman damgasıdır.

İkinci bölümde grubu başlatan sistemin AKD varlığı grubu başlatan sisteme çok

hedefli grup parametrelerini iletmektedir. Bu parametreler içerisinde bu kez erişim

kontrol listesi ve kontrol grup parametreleri bulunmamaktadır. Üçüncü ve son

bölümde grubu başlatan sistem kontrol grubuna katılmaktadır. Grubu başlatan sistem

bölge haricinde bir şebeke bulunduğu zaman farklı bir yol izlenmektedir. Bunun için

öncelikle DKD’nin durumdan haberdar edilmesi gerekmektedir. Bu işlem pek çok

yolla yapılabilmektedir. Gruba katılan sistemin AKD ve DKD’yi otomatik olarak

uyarması, sınır yönlendiricilerinin katılım isteklerini yakalayarak DKD’ye bildirimde

bulunması veya DKD’nin harici kaynakları içeren grupların bir üyesi olması bu

yollara örnek olarak gösterilebilir. Harici kaynaklardan bölgeye gelen çok hedefli

iletim trafiği farklı bir grup anahtar yönetim otoritesi altında oluşturulduğu için bölge

123

içerisindeki DKD’ye ihtiyaç duyulmayabilir. İhtiyaç duyulduğu zaman yapılması

gereken işlem gelen trafiğin deşifre edilmesi ve bölge içerisinde uygulanan grup

anahtar yönetimi ilkelerine sadık kalınarak tekrar şifrelenmesidir.

Grup iletişiminde kullanılan anahtarların değişimi iki farklı nedenden dolayı

yapılmaktadır. Bunlardan ilki grup başlatıcısı (grup sahibi) tarafından belirlenen

periyodik değişimdir. Diğer neden ise üyelik değişimleridir. Çok hedefli iletim

gruplarıyla ilgili bütün tekrar anahtarlama işlemleri DKD tarafından başlatılmakta ve

kontrol edilmektedir. Kontrol gruplarıyla ilgili bütün tekrar anahtarlama sorumluluğu

ise AKD varlıklarına aktarılmıştır. Çok hedefli iletim grubunun anahtarının

değiştirilmesi toplam beş adımdan oluşmaktadır. İlk adımda DKD, bütün AKD’lere

tekrar anahtarlama işlemine hazır olmaları için özel bir mesaj göndermektedir. Bu

mesajda çok hedefli iletim grubunun adresi ve kimliği bulunmaktadır. İkinci adımda

DKD, MGSA için yeni bir GSPI, yeni bir çok hedefli iletim anahtarı ve anahtar

kimliği üretmektedir. Üçüncü adımda çok hedefli iletim grubuna haiz özellikler DKD

tarafından imzalanmaktadır. Bu özellikler sırayla çok hedefli iletim grup adresi, grup

kimliği, MGSA, yeni çok hedefli iletim anahtarı, yeni anahtar kimliği ve zaman

damgasıdır. Dördüncü adımda DKD, bu bilgileri AKD’lere güvenli olarak

iletmektedir. Beşinci ve son adımda ise AKD’ler bu bilgileri güvenli olarak ilgili

sistemlere dağıtmaktadır. Dağıtım için alan kontrol grubu veya tek hedefli güvenli

iletim kullanılmaktadır.

Alan anahtarlarının değiştirilmesi ise AKD’ler tarafından yürütülmekte ve dört

adımda tamamlanmaktadır. İlk adımda AKD, ilgili bütün üyelere tekrar

anahtarlamaya hazır olunmasına dair bir mesaj yollamaktadır. Bu mesajda tekrar

anahtarlanacak kontrol grup adresi ve grup kimliği bulunmaktadır. İkinci adımda

AKD, AGSA için yeni bir GSPI, yeni bir kontrol grup anahtarı ve anahtar kimliği

üretmektedir. Üçüncü adımda AKD üyelere göndereceği bilgileri imzalamaktadır. Bu

bilgiler; kontrol grubunun adresi, grubun kimliği, AGSA, yeni kontrol grubu

anahtarı, yeni grup kimliği ve zaman damgasıdır. Dördüncü ve son adımda AKD, bu

bilgileri mesaj haline getirmekte ve ilgili üyelerle paylaşmaktadır. Burada iki farklı

yol izlenebilmektedir. İlk yol kontrol grubunun kullanılması, ikinci yol ise tek hedefli

güvenli iletişimin kullanılmasıdır. Grup anahtarlama yönetimi altyapısını ilgilendiren

bütün-KD-grubu anahtarının değiştirilmesi daha önce açıklanan değişim

prosedürleriyle benzerlik göstermektedir.

124

Bölge içerisindeki bir sistem, o bölge içerisinde kayıtları olan ve aktif olarak iletimin

yapıldığı bir gruba üye olmak istediğinde geçmişte gruba iletilmiş olan veriye erişip

erişemeyeceğinin belirlenmesi gerekmektedir. Erişim izni, güvenlik politikası

tarafından belirlenmektedir. Uygulanan politikaya göre, sıkı veya gevşek tekrar

anahtarlama seçilmektedir. Sıkı tekrar anahtarlamada, grup üyeliği değişir değişmez

tekrar anahtarlama uygulanmaktadır. Gevşek anahtarlamada ise tekrar anahtarlama

için belirtilen periyodun geçmesi beklenmektedir. Sıkı tekrar anahtarlama, yeni

katılan ve gruptan ayrılan her üye için çok hedefli iletim anahtarının ve ilgili alandaki

alan grup anahtarının değiştirilmesiyle sağlanmaktadır. Gruba üye olmak isteyen

sistem, o alan içerisinde o gruba üye olmak isteyen ilk sistem ise diğer alanlardaki

anahtarların da değiştirilmesi gerekmektedir. Bunun nedeni, o sistemin geçmişte

diğer alanlardaki trafiği depolamış olma olasılığıdır.

IKAM mimarisinin temelini oluşturan iki katmanlı yapı, Iolus [84] mimarisinde çok

katmanlı yapıya dönüştürülmüştür. Iolus’ta hiyerarşinin ne kadar derin olacağına dair

herhangi bir limit bulunmamaktadır. Mimari içerisinde güvenli dağıtım ağacı

kullanılmaktadır. Bu ağaç, güvenli ve küçük olan pek çok alt gruptan oluşmaktadır.

Bu alt gruplar hiyerarşik bir şekilde birbirlerine bağlanmakta ve tek bir sanal grup

oluşturmaktadır. Ölçeklenebilirlik, bütün alt grupların birbirinden bağımsız olması

sayesinde sağlanmaktadır. Her alt grubun kendine ait çok hedefli iletim grup adresi

bulunmaktadır. Alt grupların oluşturulması ve işletilmesi için belirli bir yönlendirme

protokolüne ihtiyaç duyulmamaktadır. Her alt grup, Ksgrp olarak isimlendirilen

kendine ait anahtara sahiptir. Dolayısıyla genel bir grup anahtarı bu mimaride

mevcut değildir. Üyelik değişimleri sadece yerel alt grubu etkilemektedir ve ilgili

Ksgrp’nin değişimi bu iş için yeterli olmaktadır. Mimarinin işletilebilmesi için alt

grupların yönetilmesi ve birbirine bağlanması gerekmektedir. Bu işlevler için iki

farklı varlık tanımlanmaktadır. Bunlardan ilki, grup güvenlik kontrolörüdür (Group

Security Controller, GSC). GSC varlığının görevi en yüksek seviyedeki alt grubu ve

grup güvenlik arabulucularını (Group Security Intermediary, GSI) yönetmektir. Her

bir alt grup için bir adet GSI mevcuttur. Gruba üye olmak isteyen sistemler alt

gruplara katılmaktadır. GSI varlıkları alt grup hiyerarşisini oluşturmaktadır. GSC

varlığı ise, güvenli dağıtım ağacının yönetiminden ve dolayısıyla çok hedefli iletim

grubunun güvenliğinden sorumludur. GSI varlıkları, kendilerine bağlı alt dal GSI

varlıkları için GSC varlığının vekili gibi davranmakta ve ayrıca kendi alt gruplarını

125

kontrol etmektedir. GSI varlıkları, güvenli dağıtım ağacı içerisinde bulundukları

seviyeye göre gruplanmaktadır. Alt seviyede bulunan GSI varlıkları üst seviyedeki

GSI varlıklarına bağlanmakta ve üst seviyede bulunan GSI varlıkları en üst seviyede

GSC varlığına bağlanmaktadır. Her bir alt grup için farklı bir Ksgrp anahtarı mevcut

olduğu için her bir çok hedefli iletim paketinin GSI varlıklarına deşifre edilerek yeni

Ksgrp ile tekrar şifrelenmesi gerekmektedir. Mimari içerisinde kullanılan hiyerarşi

GSC varlığının otoritesinin alt seviyede bulunan GSI varlıklarına dağıtılmasını

sağlamakla birlikte verinin alt gruplar arasında tekrar çok hedefli olarak iletilmesini

de basitleştirmektedir [84]. Iolus mimarisinde yer alan hiyerarşik yapı şekil 6.7’de

gösterilmektedir.

A

A

AA A

A

GSC

AA

A

AA

A

AA

A

K

GSI

GSI

GSI

GSI

1

2

3

3

4

5

GSI

Şekil 6.7 – Iolus mimarisindeki hiyerarşik yapı

Şekilde gösterilmekte olan topoloji, hiyerarşik olarak bölümlere ayrılmıştır.

Kaynağın var olduğu bölge, hiyerarşideki ilk bölge olmaktadır. Başlangıç safhasında,

çok hedefli iletim grubunun oluşturulabilmesi için sadece GSC varlığının

operasyonel olması yeterlidir. GSC varlığı, ilk olarak sistemlerle ilgili erişim kontrol

listesine ihtiyaç duymaktadır. Güvenlik politikası, bu liste sayesinde

oluşturulmaktadır. GSC başlatıldıktan sonra, GSI varlıkları ve grup üyeleri alt

gruplara katılımı başlatmaktadır. Bir sistem, gruba üye olmak istediğinde öncelikle

kendisiyle ilgili alt grubu kontrol eden GSA varlığını aramaktadır. İlgili GSA

bulunduktan sonra, katılım mesajı güvenli bir tek hedefli iletim kanalından

gönderilmektedir. Bu mesaj GSA varlığına ulaştıktan sonra, ilk olarak erişim kontrol

126

listesi veritabanı kontrol edilmektedir. Bu kontrolün başarıya ulaşması sonucunda

üyelik işlemleri başlatılmaktadır. İlk olarak sadece yeni üye ile paylaşılacak olan

KGSI-MBR anahtarı üretilmekte ve üye ile ilgili diğer bilgilerle birlikte veri tabanına

yerleştirilmektedir. Daha sonra bu anahtar ve grupla ilgili diğer bilgiler güvenli kanal

kullanılarak üyeye ulaştırılmaktadır.

Alt gruba yeni bir üye katıldığı için alt grup anahtarı olan Ksgrp’nin değiştirilmesi

gerekmektedir. Aksi halde yeni üye kullanımda olan anahtar sayesinde geçmişte

iletilmiş olan veriyi deşifre edebilir hale gelmektedir. Ksgrp’nin değiştirilebilmesi için,

GSI yeni bir anahtar oluşturmakta (K’sgrp) ve bu anahtarı Ksgrp ile şifreleyerek grup

üyelerine çok hedefli olarak iletmektedir. Bir sistem, yeni bir gruba katılmak

istediğinde, bu sistem ile ilgili GSI o grubun üyesi değilse, GSI varlığının güvenli

dağıtım ağacına dahil edilmesi için aynı yöntem izlenmektedir.

Iolus mimarisinde her katılım isteğinin bir geçerlilik süresi mevcuttur. Bu süre

dolduğunda trafiğin artık istenmediği varsayılmaktadır. Üyelerin, grup içerisinde

kalabilmeleri için daha önceden kurdukları güvenli kanal üzerinden güncelleme

mesajları göndermeleri gerekmektedir. Grup üyelerinden bir tanesi alt gruptan

ayrılmak istediğinde GSA varlığına ayrılma mesajı göndermektedir. Ayrılma işlemi,

gruptan atılmak istenen bir üye için de işletilebilmektedir. Her iki durumda da

Ksgrp’nin değiştirilmesi gerekmektedir. Bunun için yeni alt grup anahtarı K’sgrp

üyelerin özel anahtarı olan KGSA-MRB ile şifrelenerek üyelere gönderilmektedir. Bu

gönderimin tek hedefli olması zorunlu değildir. Alt grup içerisinde kalması istenen

bütün üyeler için özel anahtarlarla şifrelenmiş K’sgrp’ler bir araya getirilmekte ve alt

gruba çok hedefli olarak iletilmektedir. Bu sayede alt grup içerisinde kalması istenen

her sistem sahip olduğu anahtar ile mesajın kendine ait kısmını deşifre edebilmekte

ve K’sgrp anahtarına sahip olmaktadır. Böylece, n üyenin bulunduğu bir alt grupta

O(n) uzunluğundaki bir mesaj O(n) adet mesajın yerini almaktadır. Gruptan

ayrılmalar sonucunda alt grupta hiçbir üye kalmadığı zaman ilgili GSI gruptan

ayrılmaktadır.

Iolus mimarisinde, iletilen çok hedefli verinin bütün üyelere ulaştırılması; grubun

tamamı için tek bir anahtar kullanan mimarilere göre daha karmaşıktır. Bunun nedeni

yapının hiyerarşik olmasıdır. Kaynak tarafından iletilen veriyi ilk olarak yerel alt

grup almaktadır. Daha sonra alt grubun sorumlu GSI varlığı, veriyi deşifre edip yeni

127

alt grup anahtarlarıyla tekrar şifrelemektedir. Böylece çok hedefli iletim bütün alt

gruplara iletilmektedir. Çok hedefli iletimin bütün gruba yapılması için iki farklı

method kullanılmaktadır. İlk method, kaynağın veriyi alt grup anahtarıyla

şifreleyerek, direk olarak yerel alt grubuna göndermesidir. Üst dalda bulunan GSI,

çok hedefli iletimi dinlemekte ve kaynaktan gelen veriyi deşifre ederek uygun alt

grup anahtarlarıyla şifrelemektedir. Kaynaktan gelen bilgi bu şekilde diğer alt

gruplara iletilmektedir. Bu mimaride en fazla yük, GSI varlıklarına binmektedir.

Verinin deşifre edilmesi ve tekrar şifrelenmesi için çok fazla kaynak ve işlem gücü

harcanmaktadır. Bunun azaltılabilmesi için dolaylı şifreleme kullanılmaktadır.

Dolaylı şifreleme tekniğinde çok hedefli iletim verisinin Ksgrp anahtarı ile

şifrelenmek yerine ilk olarak, rastlantısal bir anahtar üretilmektedir. Çok hedefli

iletim verisi, bu anahtar ile şifrelenmektedir. Daha sonra bu anahtar, Ksgrp ile

şifrelenmektedir. Böylece çok hedefli iletim verisi rastlantısal olarak üretilen anahtar

ile; rastlantısal olarak üretilen anahtar ise Ksgrp ile şifrelenmiş olmaktadır. Son olarak

şifrelenmiş veri ve şifrelenmiş anahtar mesaj içerisine yerleştirilerek yollanmaktadır.

İlgili GSI, bu mesajı aldığında yeni bir alt gruba göndermek için sadece rastlantısal

anahtarı deşifre etmekte ve yeni alt grubun Ksgrp anahtarı ile tekrar şifrelemektedir.

Böylece deşifre etme ve tekrar şifreleme işlemleri bütün veri için değil sadece bir

anahtar için yapılmakta ve dolayısıyla kaynaklar daha etkili kullanmaktadır. Çok

hedefli iletimin, kaynak tarafından doğrudan yerel alt gruba yapılması, Ksgrp

anahtarları güncel olmayan sistemler var olduğu sürece güvenlik açıkları

yaratmaktadır. Çok hedefli iletim verisi, Ksgrp anahtarı güncel olmayan bir kaynak

tarafından şifrelendiği zaman eski grup üyeleri veriyi deşifre edebilmektedir. Aynı

durum eski Ksgrp anahtarı güncel olmayan alıcılar için de geçerlidir. Eski bir anahtara

sahip olan alıcılar eski kaynaklardan veri aldığında bu veriyi güncel olarak

değerlendirebilmektedir. Bu tür güvenlik açıklarının engellenebilmesi için kaynağın

çok hedefli iletim verisini, KGSI-MBR anahtarı ile şifreleyerek direk olarak GSI

varlığına göndermesi gerekmektedir. GSI, aldığı şifreli veriyi deşifre etmekte ve Ksgrp

anahtarı ile şifreleyerek yerel alt gruba göndermektedir. Böylece daha önce

bahsedilen güvenlik açıkları bertaraf edilmiş olmaktadır. Alıcı sistemler, trafiği GSI

varlığından aldıkları için iletişim güvenli bir şekilde yapılmaktadır. Çok hedefli

iletim grubunun, güvenlik nedenlerinden dolayı periyodik olarak tekrar

anahtarlanması gerekmektedir. Böylece kriptoanaliz saldırılarının önüne geçilmeye

çalışılmaktadır. Üretilen yeni K’sgrp anahtarının, Ksgrp anahtarı ile şifrelenerek gruba

128

çok hedefli olarak iletilmesi, optimum güvenliği sağlamamaktadır. Bunun nedeni

böyle bir yapının bir zincir oluşturması ve zincirin herhangi bir parçasının kopması

sonucu bütün zincirin bundan etkilenmesidir. Iolus mimarisinde Ksgrp anahtarı bütün

gruba özgü olmadığı ve sadece alt gruplarda kullanıldığı için böyle bir tehlike yerel

gruplarla sınırlı kalmaktadır. Grupların yaşam süresi bittikten sonra kapatılmaları

gerekmektedir. Bu işlem için GSC varlığının kapatılması yeterlidir. Daha sonra GSC

varlığı, alt dalda bulunan GSI varlıklarına grup kapatma mesajı göndermekte ve

böylece grubun kapatılma işlemi alt dallara iletilmektedir.

Iolus mimarisinde güvenli dağıtım ağacının yönetiminin kimin tarafından yapılacağı

önem taşımaktadır. Bu sorunun yanıtı, çok hedefli iletim içerik sağlayıcısı ile şebeke

sağlayıcısının (ISS) kim olduğuna göre değişmektedir. Gerçek hayatta çoğu zaman,

içerik sağlayıcı ile şebeke sağlayıcı aynı yönetimsel varlıklar olmamaktadır. En

güvenli yol, GSA varlıklarının (burada GSA, Group Security Agent olarak

kullanılmaktadır ve Group Security Association ile bir ilgisi bulunmamaktadır) çok

hedefli iletim içerik sağlayıcının kontrolünde bulunmasıdır. Ancak GSA varlıkları

çoğu zaman şebeke sağlayıcısının konrolünde bulunduğu için bu her zaman mümkün

olmamaktadır. Genelde GSA varlıkları şebeke içerisinde sabit bir yerde bulunmakta

ve bütün çok hedefli iletim grupları için kullanılmaktadır. İçerik sağlayıcı, güvenli

bir çok hedefli iletim yapmak istediğinde şebeke sağlayıcısına baş vurarak GSA

varlıklarını kiralamaktadır. Bu çalışmada, gelecekte çok hedefli iletim trafiği çok

fazla olan içerik sağlayıcılarının, kendi GSA varlıklarını tedarik edeceği ve

kullanacağı öngörülmektedir. GSA varlıklarının şebeke içerisinde nerelere

yerleştirilmesi gerektiği önemli bir tasarım parametresidir. Yer bilgisi üyelerin

dağılımıyla doğrudan ilişkili olduğu için optimum yerlerin bulunması hemen hemen

imkansızdır. Bunun nedeni optimum yerlerin bulunmasının, gelecekteki üye

dağılımının şimdiden bilinmesini gerektirmesidir. GSA varlıklarının yerlerinin

dinamik olarak değiştirilebilmesi istenmektedir. İleride herhangi bir GSA varlığının

aşırı yüklenmesi hizmet kalitesinin düşmesine sebep olacağından bir grup üyenin

yeni bir GSA oluşturularak aşırı yüklenmiş GSA varlığından ayrılması

sağlanmaktadır. Böylece ölçeklenebilirlik azalmaktadır. Iolus mimarisinin analizi

sonucu ortaya çıkan diğer bir sorun ise gruba üye olmak isteyen üyelerin kendi yerel

bölgesinde bulunan GSA varlıklarını nasıl keşfedeceğidir. Keşif işleminin

karmaşıklığı GSA varlıklarının yerinin sabit olup olmamasına bağlıdır. Önerilen,

129

yerleri dinamik olarak değişen GSA varlıklarının bulunması için önerilen yol, yerel

dizin hizmetlerinin kullanılmasıdır. Böylece gruplara üye olmak isteyen üyeler yerel

dizinleri sorgulamakta ve kendi bölgesi için hangi GSA’yı kullanması gerektiğini

bulmaktadır.

6.2.1.3. Grup Anahtar Dağıtımı ve Ölçeklenebilir Tekrar Anahtarlama

Algoritmaları

Çok hedefli iletimin güvenli hale getirilmesi için kullanılan anahtarların, periyodik

olarak ve üye değişiklikleri gibi çeşitli sebepler dolayısıyla pek çok kere

değiştirilmesi gerekmektedir. Bir grubun tekrar anahtarlanması, bir başka deyişle

kullanımda olan anahtarların değiştirilmesi için izlenmesi gereken en basit yol, yeni

grup anahtarının her bir üyeye teker teker iletilmesidir. Böyle bir tasarım, üye

sayısının az olduğu gruplarda dahi ölçeklenebilirlik sağlamamaktadır.

Gerçekleştirilmesi gereken işlemler böyle bir algoritmada grup üyelerinin sayısıyla

doğrusal olarak artmaktadır. Buna ek olarak anahtarları dağıtmakla görevli olan

varlığın işlem gücü ve yapılması gereken işlemleri karmaşıklığı grup üyelerinin

sayısını büyük ölçüde kısıtlamaktadır. Güvenliğin, çok hedefli iletimin bütün

uygulamalarında sağlanabilmesi için yeni anahtar dağıtım algoritmalarının üzerine

çalışılmış ve zamanla pek çok yeni algoritma ortaya çıkmıştır. Anahtar dağıtım

algoritmaları, çok hedefli iletim uygulamalarının tamamına hitap etmemektedir.

Çoğu algoritma belirli koşullar altında kullanılabilmektedir. Bu koşullar, çok hedefli

iletim uygulamalarının özelliklerine göre değişmektedir.

Buna ek olarak, çok hedefli iletimin sadece güncel grup üyeleri çerçevesinde

yapılması gerekmektedir. Güvenliğin tam olarak sağlanabilmesi için geriye dönük ve

ileriye dönük gizlilik ilkelerine sağdık kalınması gerekmektedir. Bir başka deyişle

üyelerden biri ayrıldığında, grup anahtarlarının değiştirilerek ayrılan üyenin

gelecekteki bilgileri alması engellenmektedir. Aynı şekilde gruba yeni bir üye

alındığında grup anahtarları yeni üyenin geçmişte iletilmiş olan şifreli veriyi deşifre

edememesi için değiştirilmektedir. Grup üyelerinin değişmesi sonucu anahtarların

yenilenmesi farklı şekillerde yapılabilmektedir. Çok hedefli iletim uygulamasında

istenen güvenlik seviyesine göre grubun tekrar anahtarlanması, ivedi şekilde veya

yığın halinde yapılmaktadır. Güvenliğin en yüksek seviyede olduğu askeri

uygulamalarda, gruptaki üye değişimlerinin hemen işleme konulması istenmektedir.

130

Böylece güvenlik açıkları ortaya çıkmamaktadır. Askeri uygulamalar kadar sıkı

güvenlik istenmeyen ticari uygulamalarda, grup üyelerinin giriş çıkışları biriktirilerek

yığınlar halinde ve ya periyodik olarak işlenme konmaktadır. Böylece üye sayısının

çok olduğu gruplarda grup denetleyicisi ve anahtar sunucusu işlem gücü bakımından

rahatlatılmaktadır [85,86]. Çoğu uygulama, grup üyelerindeki değişiklikleri yığınlar

haline işlemekte ve buna ek olarak kötü niyetli kişilerin kontrolüne geçen üyelerin

gruptan derhal çıkarılması için gerekli mekanizmaları bulundurmaktadır. İsteklerin

biriktirilerek yığın halinde işlenmesi ileriye ve geriye dönük gizlilik ilkelerine ters

düşmektedir. Gruptan ayrılan üyeler, ilgili anahtarlar değiştirilene kadar gruba

iletilen trafiği alıp deşifre edebilmektedir. Bu durum şekil 6.8’de gösterilmektedir.

Ayrılan üye

Katılan üye

Tekrar anahtarlama

Üye ayrılırGrup trafiğini deşifre

etmeye devam ederZaman

Şekil 6.8 – Yığın işleme ve ileriye dönük güvenlik

Televizyon yayıncılığının çok hedefli iletim ile yapıldığı uygulamalarda, müşterilerin

gruba giriş çıkış zamanları belirlidir. Bu tür uygulamalarda müşteriler, ilk olarak

istedikleri filmin uygun seansına kayıt yaptırmaktadır. Seansın başlamasından hemen

önce ilgili gruba girişler yapılmakta ve seans bittikten sonra grup boşaltılmaktadır.

Böyle bir ortamda, üyelerin giriş çıkışları önceden bilinmektedir. Üyelerin çıkış

zamanının bilindiği bir uygulama için kullanılabilecek optimum algoritma MARKS

algoritmasıdır [81]. MARKS algoritmasında, gruba üye olan bir sistemin ne zaman

gruptan ayrılacağı üyelik işlemlerine başlanırken öğrenilmektedir. Bu bilgiler

ışığında, ilk olarak grubun yaşam süresi t zaman periyoduna bölünmektedir. Her

zaman dilimi için bir anahtar üretilmektedir. Böylece toplam t adet K1, K2, K3, …, Kt

anahtarı üretilmiş olmaktadır. Sistemler gruba üye olmak istedikleri zaman, gruptan

ne zaman ayrılacaklarının bilgisini GDAS ile paylaşmaktadır. t1 ila t2 zamanları

arasında grupta kalmak isteyen bir üyeye, Kt, Kt1+1, Kt1+2, Kt1+3, …, Kt2-1, Kt2

anahtarları verilmektedir. MARKS algoritmasında bu tür bir anahtar dağılımı için

hiyerarşik rastlantısal diziler (seed) kullanılmaktadır. GDAS ilk olarak hiyerarşinin

kökünü oluşturmak için bir rastlantısal dizi kullanmaktadır. Daha sonra bir alt

131

seviyedeki diziler hesaplanmaktadır. Bunun için gL ve gR olarak isimlendirilen iki

farklı tek yollu perdeleme işlevi kullanılmaktadır [81]. Bu işlem, hiyerarşinin en alt

tarafında bulunan yaprakların sayısı t olana kadar devam etmektedir. Böylece grup

yaşam süresinin oluşturan periyotlar tamamlanmış olmaktadır. MARKS

algoritmasında yer alan dizi oluşturma mekanizması şekil 6.9’da gösterilmektedir.

S0,0

S1,0

S3,0

S2,0

S3,1 S3,2 S3,3 S3,4 S3,5 S3,7S3,6

S2,1 S2,2 S2,3

S1,1

A üyesinin yaşam süresi

K0 K1 K2 K3 K4 K5 K6 K7

S1,0 = gL(S0,0)

S1,1 = gR(S0,0)

gR, gL perdeleme işlevleri

A üyesi tarafından alınanlar

Si,j

İ = düğümün derinliği

J = i derinliğindeki dizin

Şekil 6.9 – MARKS algoritmasındaki anahtar dağıtımı

Şekil 6.9’da gösterilmekte olan anahtar ağacında, yapraklarda bulunan her bir düğüm

grubun yaşam süresi içerisindeki bir periyoda denk gelmektedir. Alt dal dizilerini

oluşturmak için kullanılan işlevler tek yolludur ve işlevlerin çıktısından yola

çıkılarak girdilerinin bulunması çok uzun zaman almakta dolayısıyla pratikolarak

imkansız hale gelmektedir. Örneğin S2,2 verildiği zaman, gL kullanılarak S1,1’in

bulunması imkânsızdır. Şekil 6.9’da, gruba K2’den K6’ya kadar toplam 5 periyot için

üye olmak isteyen bir sistem gösterilmektedir. Bu sistem, üyelik isteğini GDAS’a

belirttikten sonra S2,1, S2,2 ve S3,6 olmak üzere toplam 3 adet dizi almaktadır. Bu

bilgiler sistemin gruba üye yapılması sırasında iletilmektedir. Daha sonra, A sistemi

gR ve gL yardımı ile S2,1’i kullanarak S3,2 ve S3,3’ü; S2,2’yi kullanarak S3,4 ve S3,5’i

hesaplamaktadır. Grubun bütün yaşam süresi için grupta kalacak bir üyeye sadece

S0,0 iletilmektedir. Üye, S0,0’ı kullanarak bütün periyotlara ait şifreleri

bulabilmektedir. MARKS algoritmasında, bütün anahtar iletişimi sistemler gruba üye

olurken yapılmaktadır. Dolayısıyla anahtar iletişimi tamamen tek hedefli iletim

üzerinden gerçekleştirilmektedir. Bu iş için tek hedefli iletimin kullanılması

güvenilirliği arttırmakta ve ek yükü azaltmaktadır. MARKS algoritmasında bir

üyelerin karşılaştığı en fazla işlem gerektiren durum, o üyenin grubun bütün yaşam

süresince grupta kalmasıdır. Böyle bir durumda sadece S0,0 gönderildiği için üyenin

132

(2t-2) adet hesaplama yapması gerekmektedir. GDAS için en kötü durum bir üyenin

K1 ve Kt haricindeki bütün anahtarları talep etmesi esnasında yaşanmaktadır. Böyle

bir durumda GDAS, toplam 2log(t/2) adet dizi göndermektedir.

Algoritma analizi sonucunda tekrar anahtarlamanın mümkün olmadığı

görülmektedir. Sistemler gruba üye olduktan sonra bütün grup üyeleri tekrar

anahtarlanmadan gruptan atılamamaktadır. Algoritma içerisinde böyle bir

mekanizmanın olmaması kullanım alanını büyük ölçüde daraltmaktadır. Grup

üyelerinin gruba katılma ve ayrılma zamanları her zaman önceden bilinmemektedir.

Bu tür durumlarda LKH [89] algoritması kullanılabilmektedir.

Mantıksal anahtar hiyerarşisi (Logical Key Hierarchy, LKH) algoritmasında grup

güvenlik denetleyicilerinin hiyerarşik bir yapıya ayrılması [84] yerine, anahtarlar

hiyerarşik bir yapıya ayrılmaktadır. Algoritma içerisinde güvenli bir grup, (U, K, R)

üçlüsü olarak ifade edilmektedir. Burada U, belirli bir kullanıcı kümesini, K ise

belirli bir anahtar kümesini temsil etmektedir. R ise, R U x K denklemini sağlayan,

kullanıcı anahtar eşleşmelerini içeren sayısal bir bağıntıyı göstermektedir. u

kullanıcısı, k anahtarına sadece ve sadece K kümesinde (u,k) tanımlı ise sahip

olabilmektedir. Her bir kullanıcı, kendi bireysel anahtarını ve grup anahtarını içeren

bir anahtarlar kümesine sahip olmaktadır. K kümesi içerisinde bulunan anahtarların

düzenlenmesi sayesinde hiyerarşik bir yapı elde edilmekte ve ölçeklenebilirlik

sağlanmaktadır. Algoritmada, çok hedefli iletim için güvenilir bir grup sunucusu

olduğu varsayılmaktadır. Bu sunucunun görevi, grup erişim kontrolünden sorumlu

olmak ve anahtar yönetimini gerçekleştirmektir. Sunucu, U ve K kümesini bilmekte

ve R kümesini oluşturmaktadır. Örnek olarak dokuz üyeden oluşan bir grup olduğu

varsayıldığında grup dağılımı {u1, u2, u3}, {u4, u5, u6}, {u7, u8, u9} olmak üzere üç

farklı alt gruptan oluşmaktadır. Her bir üyeye; bireysel anahtarı, grup anahtarı ve alt

grup anahtarı olmak üzere toplam üç anahtar dağıtılmaktadır. Böyle bir yapıdan u1

üyesinin ayrılması için ilk olarak geride kalan sekiz üyenin yeni bir grup oluşturması

ve yeni bir grup anahtarı edinmesi gerekmektedir. Buna ek olarak, u2 ve u3’ün yeni

bir alt grup oluşturması sağlanmalıdır. Grup sunucusu, yeni grup anahtarını

kullanıcıların bireysel anahtarları ile şifreleyerek, u2 ve u3’e yollamaktadır. Diğer

kullanıcılar için bu iş alt grup anahtarları kullanılarak yapılmaktadır. Böylece her bir

kullanıcıya iki yerine üç anahtar verilmekte fakat gruptan ayrılma operasyonu için

sekiz şifreleme yerine beş şifreleme yapılmaktadır. Bu durum genelleştirildiğinde,

133

d’nin katları olarak ifade edilebilen n adet kullanıcı için K kümesi her düğümde d

adet bacak olan tam ve dengeli bir ağaç içerisinde yerleştirilmiş anahtarlardan

oluşacaktır. Bir kullanıcının böyle bir ağaçtan ayrılması için n-1 adet şifreleme

yapılması gerekirken LKH algoritmasında şifreleme sayısı dlogd(n) adet olmaktadır.

100,000 kullanıcılı bir grup için şifreleme kazancı, gözle görülür biçimde

artmaktadır.

R kümesi oluşturulduktan sonra anahtar çizgesine geçilmektedir. Anahtar çizgesinde

iki farklı düğüm tipi bulunmaktadır. U-düğümleri kullanıcıları ve k-düğümleri

anahtarları ifade etmektedir. Her bir u-düğümünden bir veya daha fazla ok

çıkmaktadır. K-düğümlerine ise bir veya bir kaç tane ok girip çıkmaktadır. G çizgesi

verildiğinde, (U, K, R) güvenli grubunun tanımlanabilmesi için aşağıda sıralanan üç

koşulun sağlanması gerekmektedir.

1. U ile G çizgesi içerisindeki bütün u-düğümleri arasında bire bir ilişki

olması gerekmektedir.

2. K ile G çizgesi içerisindeki bütün k-düğümleri arasında bire bir ilişki

olması gerekmektedir.

3. (u,k) ikilisi, sadece ve sadece G çizgesinde u kullanıcısına denk düşen u-

düğümüyle, k anahtarına denk düşen k-düğümü arasında direk bir bağlantı

var ise R kümesinin içerisindedir.

Bu koşulları saylayan ve toplam dört üyeden oluşan bir anahtar çizgesi şekil 6.10’da

verilmektedir.

k12

k1234

k234

k1 k2 k3 k4

u1 u2 u3 u4

k-düğümleri

u-düğümleri

Şekil 6.10 – LKH algoritmasında örnek anahtar çizgesi

Şekil 6.10’daki örnekte verilen örnek çizge için (U, K, R) üçlüsü aşağıda

gösterilmektedir.

134

U = {u1, u2, u3, u4}

K = {k1, k2, k3, k4, k12, k234, k1234}

R = {(u1, k1), (u1, k12), (u1, k1234),

(u2, k2), (u2, k12), (u2, k234), (u2, k1234),

(u3, k3), (u3, k234), (u3, k1234),

(u4, k4), (u4, k234), (u4, k1234)}

Her bir güvenli grup (U, K, R) ile iki işlev ilişkilendirilmiştir. Bu işlevler

anahtarkümesi() ve kullanıcıkümesi() işlevleridir. Anahtarkümesi(u), U kümesinin

bir elemanı olan u kullanıcısının elinde bulundurduğu bütün anahtarlar kümesidir.

Aynı şekilde kullanıcıkümesi(k) ise K kümesinin bir elemanı olan k anahtarını

bulunduran bütün kullanıcılar kümesidir. Bu kümelerin matematiksel olarak

gösterilimi aşağıda verilmektedir.

anahtarkümesi(u) = { k | (u,k) R }

kullanıcıkümesi(k) = { u | (u,k) R }

Bu işlevlere örnek olarak anahtarkümesi(u4) = {k4, k234, k1234} ve

kullanıcıkümesi(k234) = {u2, u3, u4} verilebilir. Bir başka deyişle bu iki işlevin

çıktıları U kümesinin bir alt kümesi (U’) ve K kümesinin bir alt kümesini (K’) ifade

etmektedir. Grup iletişimine dahil olan bir üye, gruptan ayrıldığında bu kullanıcının

elinde bulundurduğu bütün anahtarların (k) yenilenmesi gerekmektedir. Bu işlem için

öncelikle ayrılan kullanıcı (u) haricindeki kullanıcıkümesi(k)’nin bulunması

gerekmektedir. Bu küme K’ olarak isimlendirildiğinde kullanıcıkümesi(K’) =

kullanıcıkümesi(k) – {u} olmaktadır. K’ kümesi hesaplandıktan sonra, bu küme

içerisindeki anahtarlar kullanılarak yeni anahtarlar (kyeni) dağıtılmaktadır. Tekrar

anahtarlamanın minimum seviyede tutulması için hesaplanan K’ kümesinin

elemanlarının minimum olması gerekmektedir. Aksi halde tekrar anahtarlama

optimum olmamaktadır.

Anahtar çizgeleri üç farklı biçimde oluşturulabilmektedir. Çizgeler, biçimlerine göre

yıldız, ağaç ve eksiksiz olarak sınıflandırılmaktadır. Yıldız diziliminde U kümesi

içerisinde yer alan her kullanıcı iki adet anahtara sahiptir. Bu anahtarlar bireysel

anahtar ve grup anahtarıdır. Yıldız dizilimi (U, K, R) güvenli gruplarının özel bir

halidir ve bütün kullanıcıların direk olarak köke bağlanması ile oluşturulmaktadır. Bu

tür bir dizilimde ölçeklenebilirlikten söz edilememektedir. Ağaç diziliminde çizgenin

135

kökü tek bir merkezdedir. Ağaç dizilimli çizgeler, h uzunluğu ve d derinliği ile ifade

edilmektedir. h, çizge içerisindeki en uzun direk yoldaki kenar sayısını belirtmekte; d

ise bir düğüme gelen maksimum kenar sayısını belirtmektedir. Çizge içerisindeki

yolların yaprak düğümleri k-düğümleri olduğu için U kümesi içerisindeki kullanıcılar

en fazla h adet anahtara sahip olabilmektedir. Buna ek olarak kök düğümdeki

anahtar, bütün kullanıcılar tarafından bilinmekte ve grup anahtarı olarak görev

yapmaktadır. Son dizilim türü olan eksiksiz dizilimde, U kümesinin elemanlarıyla

oluşturulmuş ve boş küme olmayan her S kümesi için kullancıkümesi(k) = S

koşulunu sağlayan bir k anahtarı mevcuttur. Dolayısıyla U kümesinin eleman sayısı n

iken, K kümesinde 2n-1 adet anahtar bulunmaktadır. (Aynı zamanda oluşturulabilen

S kümelerinin sayısı da 2n-1’dir.) Bu eşitlikten hareket edildiğinde U kümesi

içerisindeki her u kullanıcısı 2n-1 adet anahtara sahip olmakta ve U kümesi

kendisinin bir alt kümesi olduğu için bir anahtar, grup anahtarı olarak her bir

kullanıcı tarafından paylaşılmaktadır. Dizilimlere göre anahtar sayıları ve kullanıcı

temelinde dağılımları tablo 6.1’de verilmektedir. Yapılan analiz sonucu çizgelerde

her bir kullanıcının 2n-1 adet anahtar bulundurması gerektiği ortaya çıkmakta

dolayısıyla böyle bir tasarım sadece küçük gruplarda pratik olmaktadır.

Tablo 6.1 – Çizge türlerine göre anahtar dağılımları

Çizge türü Yıldız Ağaç Eksiksiz

Toplam anahtar sayısı n + 1 (d x n) / (d -1) 2n-1

Kullanıcı başına anahtar sayısı 2 h 2n-1

Genel olarak bir u kullanıcısının gruba katılması için (veya gruptan ayrılması için),

ilk olarak grup sunucusuna (s) ilgili isteğini iletmesi gerekmektedir. Bu istek mesajı,

u ile s arasında bir kimlik doğrulama prosedürü işletilmesine sebep olmaktadır. Bu

prosedür, güvenlik altyapısı içerisindeki kimlik doğrulaması sunucuları sayesinde

uygulanmaktadır. u kullanıcısının gruba girmesi onaylanmaz ise, kullanıcıya red

mesajı gönderilmektedir. u kullanıcısının gruba katılma hakkı onaylandıktan sonra

bu onaylanma mekanizması [90] sırasında paylaşılan anahtarlar kullanıcının bireysel

anahtarları (ku) olmaktadır. Algoritma içerisinde kullanılan mesajlaşmalar a → b : c

şeklinde gösterilmektedir. Böyle bir mesajlaşma a varlığından b varlığına z mesajının

iletildiği anlamına gelmektedir. Okun yönü ise mesajın gönderildiği varlığı temsil

etmektedir. Böylelikle kimlik doğrulama mesajı { s ↔ u : u’nun kimliğini doğrula ve

136

ku anahtarını gönder } şeklinde ifade edilebilmektedir. Grup üyeliğinin her

değişiminde, yeni bir güvenli grup oluşturulmaktadır. Güvenlik sunucusu s, anahtar

çizgesini güncellemekte ve çeşitli k,u-düğümlerini silmekte, eklemekte veya

değiştirmektedir. Grup üyelerindeki değişimin algoritma içerisinde işlenmesi, çizge

türüne göre değişmektedir. Yıldız dağılımlı çizgelerde yeni bir u kullanıcısı gruba

dahil olduğunda s sunucusu yeni bir u-düğümü ve bu kullanıcının ku anahtarı için

yeni bir k-düğümü oluşturmaktadır. u-düğümü, k-düğümü ile birleştirilmekte ve k-

düğümü köke bağlanmaktadır. Yeni kullanıcının geçmişteki iletişimi deşifre

edememesi için kU’ olarak isimlendirilen yeni bir grup anahtarı üretilmektedir. Bu

anahtarın yeni gruba iletilmesi gerekmektedir. Bunun gerçekleştirilebilmesi için, yeni

grup anahtarı eski grup anahtarı ile şifrelenmekte ve grup üyelerine çok hedefli

olarak iletilmektedir. Bu iletim sayesinde yeni grup üyesi haricindeki bütün üyelerin

anahtarları güncellenmektedir. Grup anahtarının yeni kullanıcıya iletilebilmesi için

tek hedefli iletim kullanılmaktadır. Yeni grup anahtarı kU’, u kullanıcısına, ku anahtarı

ile şifrelenerek gönderilmekte ve böylece tekrar anahtarlama tamamlanmış

olmaktadır. Yıldız dizilimde u kullanıcısının katılımı için yapılan mesajlaşmalar ve

çizgenin değişimi şekil 6.11’de gösterilmektedir.

(1) u → s : katılım isteği

(2) s ↔ u : kimliğini doğrula ve ku anahtarını gönder

(3) s : rastlantısal olarak kU’’yu üret

(4) s → u : { kU’ } ku

(5) s → U : { kU’ } kU

k1 k2 k3

u1 u2 u3

k1 k2 k3

u1 u2 u3

k4

u4

u4„ün gruba katılması

u4„ün gruptan ayrılması katılması

Şekil 6.11 – Yıldız dizilimli çizgede grup üyeliğinin değişimi

Şekil 6.11’de gösterilmekte olan ve bu algoritma ile ilgili olan diğer mesajlaşmalar

içerisinde ek bilgiler de gönderilebilmektedir. Yeni anahtarlar için alt grup etiketleri,

137

sayısal sertifikalar, mesaj içeriğinin kontrolü için alanlar ve zaman damgası ek

bilgilere örnek olarak verilebilir. Aynı grup ile ilişkili olarak bir üyenin (u) gruptan

ayrılması aşağıda gösterilmektedir.

(1) u → s : { gruptan ayrılma isteği } ku

(2) s → u : { ayrılma isteği alındı bilgisi } ku

(3) s : rastlantısal olarak kU’’yu üret

(4) u haricinde U kümesinde bulunan bütün kullanıcılar kümesi v için

s → v : { kU’ } kv

Katılım, ağaç çizgelerine yapıldığında değişik bir prosedür izlenmektedir. İlk olarak

u kullanıcısı için bir u-düğümü ve ku’yu içeren bir k-düğümü oluşturulmaktadır.

Çözülmesi gereken ilk problem, oluşturulan k-düğümünün çizge içerisinde nereye

birleştirileceğidir. Yeni kullanıcılar ağaç çizgesine dengeli bir şekilde

yerleştirilmelidir. Çizgenin optimum olması ancak bu şekilde sağlanmaktadır. Çizge

yeni halini aldıktan sonra üretilen yeni anahtarların kullanıcılara güvenli bir şekilde

dağıtılması gerekmektedir. Bu prosedür Şekil 6.12’de anlatılmaktadır.

u9„un gruptan ayrılması katılması

k123

k1 k2 k3

u1 u2 u3

k456

k4 k5 k6

u4 u5 u6

k78

k8

u7 u8

k7

k123

k1 k2 k3

u1 u2 u3

k456

k4 k5 k6

u4 u5 u6

k789

k8 k6

u7 u8 u6

k7

k1-8

k1-9

Etkilenen k-düğümleri

u9„un gruba katılması

Şekil 6.12 – Ağaç dizilimli çizgede gruptan ayrılma ve gruba katılma

138

Şekilde u9 kullanıcısı gruba katılmak istemektedir. Bu kullanıcı için katılım noktası

k78 k-düğümü olarak belirlenmiştir. Bunun nedeni diğer düğümlerle birlikte dengeli

bir yapının oluşturulmak istenmesidir. k78 düğümü yeni çizgede k789 düğümü olarak

değişmektedir. Kök düğümü k1-8’den k1-9’a değişmektedir. u1, ..., u6 kullanıcılarına

sadece k1-9 anahtarı gönderilmesi gerekirken u7, u8 ve u9 kullanıcıları, hem k1-9

anahtarına hem de k789 anahtarına ihtiyaç duymaktadır. Bu noktada kullanıcılara

gönderilmesi gereken yeni anahtarlar belirlenmiş olmaktadır. Yeni bilgilerin

kullanıcılara güvenli bir şekilde dağıtılması için üç farklı tekrar anahtarlama stratejisi

bulunmaktadır.

Bu stratejiler kullanıcı odaklı, anahtar odaklı ve grup odaklı tekrar anahtarlama

olarak isimlendirilmektedir. Kullanıcı odaklı tekrar anahtarlamada, yeni anahtarlar

kullanıcılara teker teker iletilmektedir. Yeni anahtarları alması gereken kullanıcılar

belirlendikten sonra, iletim, bu kullanıcıların ortak olarak kullandıkları anahtarlar

sayesinde güvenli hale getirilmektedir. Şekil 6.12’deki örnekte üç farklı mesaj

gönderilmektedir. Bu mesajlar aşağıda sıralanmaktadır.

s → { u1, ..., u6 } : { k1-9 } k1-8

s → { u7, u8 } : { k1-9, k789 } k78

s → u9 : { k1-9, k789 } k9

Bu örnek genelleştirildiğinde, her bir anahtarı k’dan “k`”’ya değişen bütün k-

düğümleri ve bu düğümlerden köke kadar olan bütün düğümler için grup sunucusu

yeni bir mesaj oluşturmakta ve ve bu mesajları k ile şifrelemektedir. Daha sonra bu

mesajlar yeni anahtarlara ihtiyaç duyan kullanıcılara gönderilmektedir. Gönderim

için tek hedefli veya çok hedefli iletim kullanılabilmektedir. Buna ek olarak ilgili

anahtarların gruba yeni dahil olan kullanıcıya iletimi o kullanıcının anahtarı ile

şifrelenerek güvenli hale getirilmektedir. Kullanıcı odaklı tekrar anahtarlama için

toplam h mesaj üretilmektedir. Şifrelenen anahtarlar sayıldığı zaman şifreleme

maliyeti h x (h+1) / 2 olarak verilmektedir [89].

Tekrar anahtarlamanın, anahtar odaklı strateji ile yapılması durumunda her bir

anahtar özel olarak şifrelenmektedir. Anahtarı k’dan “k`”’ya değişen her bir k-

düğümü için grup sunucusu iki farklı mesaj hazırlamaktadır. İlk mesajda k` anahtarı

k ile şifrelenmekte ve kullanıcıkümesi(k)’ya gönderilmektedir. Böylece yeni

139

kullanıcı haricinde k` anahtarına ihtiyaç duyan bütün kullanıcılar anahatarı

edinmektedir. İkinci mesaj yeni kullanıcı için üretilmekte ve kullanıcının bireysel

anahtarı kullanılarak şifrelenmektedir. Bu stratejide bir kullanıcı, bütün

anahtarlarının güncellenmesi için birden fazla mesaj alabilmektedir. Bu strateji şekil

6.11’de gösterilmekte olan gruba uygulandığında aşağıdaki mesajların gönderilmesi

gerekmektedir.

s → { u1, ..., u8 } : { k1-9 } k1-8

s → u9 : { k1-9 } k9

s → { u7, u8 } : { k789 } k78

s → u9 : { k789 } k9

Bu şekilde grup sunucusundaki şifreleme yükü 2(h-1) olmakta fakat h adet mesaj

yerine 2(h-1) adet mesaj üretilmektedir. Mesaj sayısının azaltılması için aynı

kullanıcıya gönderilmesi gereken bütün mesajlar tek bir mesaj altında

toplanmaktadır. Böylece sunucu dört mesaj göndermek yerine aşağıda gösterilen üç

mesajı göndermektedir.

s → { u1, ..., u6 } : { k1-9 } k1-8

s → { u7, u8 } : { k1-9 } k1-8, { k789 } k78

s → u9 : { k789 } k9

Kullanıcı odaklı tekrar anahtarlama stratejisinde, birleştirilmiş mesajlar kullanıldığı

takdirde mesaj sayısı kullanıcı odaklı stratejideki mesaj sayısı olan h’ye eşit

olmaktadır. Fakat grup sunucusu üzerindeki şifreleme yükü 2(h-1) olarak

kalmaktadır. Yapılan analizler sonucu anahtar odaklı tekrar anatarlamanın kullancı

odaklı tekrar anahtarlamaya göre daha iyi olduğu görülmektedir. Grup odaklı tekrar

anahtarlama stratejisinde, bütün anahtarların aynı mesaj içerisinde toplanarak grubun

tamamına çok hedefli olarak iletilmektedir. Böyle bir tekrar anahtarlama mesajı,

grubun üye sayısına bağlı olarak diğer stratejilere nazaran uzun olabilmektedir. Buna

ek olarak pek çok kullanıcının işine yaramayacak bilgiler içermektedir. Ancak üye

sayısının n ve anahtar derinliği d olan bir grup için mesaj uzunluğu O(logd(n))

olacağından, için ölçeklenebilirlik bir sorun yaratmamaktadır. Sonuç olarak grup

odaklı tekrar anahtarlama stratejisinin diğer iki stratejiye göre daha avantajlı olduğu

görülmektedir. Bunun ilk sebebi, çok hedefli iletimin alt gruplara yapılması

ihtiyacının olmamasıdır. Ayrıca mesaj sayısı daha az olacağı için mesaj ek yükü

140

azalmakta ve dolayısıyla gönderilen sucunu tarafından iletilen bayt sayısı da

azalmaktadır. Bu yaklaşım için üretilen tekrar anahtarlama mesajları aşağıda

gösterilmektedir. Grup odaklı tekrar anahtarlama sayesinnde iletilen mesaj sayısı

ikiye inmektedir. Sunucu üzerindeki şifreleme maliyeti 2(h-1) olmaktadır.

s → { u1, ..., u8 } : { k1-9 } k1-8, { k789 } k78

s → u9 : { k1-9, k789 } k9

Gruptan ayrılma işlemleri için öncelikle ayrılmak isteyen üyenin grup sunucusundan

onay alması gerekmektedir. Ayrılmak isteyen kullanıcı (u), bireysel anahtarını

kullanarak ayrılma isteğini içeren mesajı şifrelemekte ve grup sunucusuna

göndermektedir. Grup sunucusu kullanıcının isteğini kabul ettiği takdirde gruptan

ayrılma işlemleri başlatılmaktadır. Sunucu, kullanıcının isteğine karşı, alındı bilgisi

göndermektedir. Alındı bilgisi kullanıcının bireysel anahtarı kullanılarak

şifrelenmektedir. Kullanıcının gruptan ayrılabilmesi için sunucu (s), u-düğümünü ve

ilgili k-düğümünü silerek çizgeyi güncellemektedir. İleriye dönük güvenliğin

sağlanabilmesi için ayrılan kullanıcının bağlı olduğu ayrılma noktasından köke kadar

olan bütün düğümlerin anahtarlarının yenilenmesi gerekmektedir. Bu yenileme

işlemi doğrultusunda üretilen yeni anahtarların etkilenen kullanıcılara güvenli olarak

dağıtılması gerekmektedir. Şekil 6.12’de gösterilmekte olan örnekte u9 kullanıcısının

ayrılması söz konusu olduğunda kök anahtar k1-9’dan k1-8’e, k789 anahtarı ise k78’e

güncellenmektedir. Buna ek olarak u1, ..., u6 kullanıcılarının sadece k1-8 anahtarına

ihtiyacı olmakla birlikte u7 ve u8 kullanıcılarının k1-8’e ek olarak k78 anahtarına da

ihtiyacı olmaktadır. Kullanıcı odaklı tekrar anahtralama stratejisi kullanıldığı zaman

gönderilmesi gereken beş mesaj aşağıda sıralanmaktadır.

s → { u1, u2, u3 } : { k1-8 } k123

s → { u4, u5, u6 } : { k1-8 } k456

s → u7 : { k1-8, k78} k7

s → u8 : { k1-8, k78} k8

Gruptan ayrılma işlemi, n kullanıcısı olan ve d derinliğindeki bir çizgeye için

genelleştirildiğinde, anahtarı k’dan k`’ya değişen ve bu düğümlere bağlı olup da

anahtarı değişmeyen her bir düğüm için grup sunucusu, bir tekrar anahtarlama mesajı

üretmektedir. Bu mesajlar, ilgili eski anahtarlarla şifrelenmekte ve kullanıcılara çok

141

hedefli olarak iletilmektedir. Tekrar anahtarlama işleminin tamamı (d-1)(h-1) mesaj

ile tamamlanmakta ve şifreleme maliyeti (d-1)(h-1)h/2 olmaktadır. Gruptan ayrılma

işlemi anahtar odaklı strateji kullanılarak gerçekleştirildiğinde her bir anahtar ayrı bir

şekilde şifrelenmektedir. Şekil 6.12’deki örnek ele alınacak olursa u9 kullanıcısının

gruptan ayrılması için aşağıdaki mesajların gönderilmesi gerekmektedir.

s → { u1, u2, u3 } : { k1-8 } k123

s → { u4, u5, u6 } : { k1-8 } k456

s → u7 : { k1-8 } k78, { k78 } k7

s → u8 : { k1-8 } k78, { k78 } k8

Böyle bir strateji, tekrar anahtarlama mesaj sayısını değiştirmemekte fakat şifreleme

maliyetini d(h-1)’e indirmektedir. Grup odaklı tekrar anahtarlamada ise, bütün yeni

anahtarların içinde bulunduğu tek bir mesaj üretilmektedir. Şekil 6.12 için bu mesaj

aşağıda verilmektedir.

s → { u1, …, u8 } : { k1-8 } k123, { k1-8 } k456, { k1-8 } k78, { k78 } k7, { k78 } k8

Bu mesaj oluşturulduktan sonra gruba çok hedefli olarak iletilmektedir. Şifreleme

maliyeti bu stratejide d(h-1) olarak anahtar odaklı strateji ile aynıdır. Mesaj sayısı ise

birdir. Gruba katılma ve gruptan ayrılma işlemleri için şifreleme ve deşifre etme

maliyetleri tablo 6.2’de verilmektedir.

Tablo 6.2 – Şifreleme ve deşifre etme maliyeti

(a) Talep eden kullanıcı

Yıldız Ağaç Eksiksiz

Katılım 1 h-1 2n

Ayrılma 0 0 0

(b) Grup kullanıcısı

Yıldız Ağaç Eksiksiz

Katılım 1 d/(d-1) 2n-1

Ayrılma 1 d/(d-1) 0

(c) Grup sunucusu

Yıldız Ağaç Eksiksiz

Katılım 2 2(h-1) 2n+1

Ayrılma n-1 d(h-1) 0

142

Tabloda, talep eden kullanıcı gruba katılan veya gruptan ayrılan kullanıcıyı

göstermektedir. Bu kullanıcı haricinde grupta bulunan kullanıcılar ise grup

kullanıcısı olarak gösterilmektedir. En alt bölümde ise grup sunucusunun yapması

gereken şifreleme (ve deşifre) işlemleri gösterilmektedir. Analiz edildiğinde

sonuçların eksiksiz çizgelerin maliyeti, hem kullanıcıları için hem de grup sunucusu

için en yüksek çıkmaktadır. Dolayısıyla eksiksiz çizgelerin kullanılmaması

gerekmektedir. Grup anahtar yönetiminin ölçeklenebilir olması için ağaç çizgelerinin

kullanılması en doğru seçimdir. Her bir kullanıcı için maliyet 1’den d/(d-1)’e

çıkmakta fakat sunucu maliyeti (d+2)(h-1)/2’ye düşmektedir.

Gruptan ayrılma ve gruba katılım işlemleri sırasında hangi tür strateji kullanılırsa

kullanılsın, yeni anahtarlar sadece gönderilen kullanıcılar tarafından bilinen eski

anahtarlar kullanılarak şifrelenmektedir. Böyle bir ortamda, herhangi bir kötü niyetli

kullanıcının grup sunucusunu taklit etme olasılığı bulunmaktadır. Kötü niyetli

kişilerin kontrolü altında olan bir kullanıcı grup sunucusunu taklit ederek grup

iletişimine zarar verebilmektedir. Bunun engellenebilmesi için kullanıcılara

güvenilmesi yanlış bir yol olacaktır. Güvenliğin sağlanabilmesi için her bir tekrar

anahtarlama mesajının grup sunucusu tarafından imzalanması bir yol olarak

önerilebilir. Böylece kullanıcılar, mesajları aldıkları zaman mesajın kaynağını

doğrulayabilmektedir. Bir mesajın imzalanabilmesi için ilk önce mesajın sabit

uzunlukta bir özetinin (digest) çıkarılması gerekmektedir. Bu özetin çıkarılması di =

h(Mi) şekilde ifade edilmektedir. Burada Mi i numaralı mesaj, di i numaralı özet ve h

ise özet çıkarma işlevidir. Özet çıkarma için kullanılan en yaygın algoritma MD5

[91] algoritmasıdır. Özet çıkarma işleminden sonra imzalama işlemine geçilmektedir.

Grup sunucusu her bir özeti kendi özel anahtarını kullanarak şifrelemektedir.

Şifrelenmiş özet ve grup sunucusunun açık anahtarı mesaja eklenerek

gönderilmektedir. Alıcı sistemler ilk önce grup sunucusunun açık anahtarını

kullanarak mesajı yol üzerinde değiştirilip değiştirilmediğini kontrol etmektedir.

Bunun için şifrelenmiş mesaj grup sunucusunun yolladığı mesajda bulunan açık

anahtar ile deşifre edilmektedir. Mesajın bir özeti çıkarılmakta ve mesajla yollanan

özet ile karşılaştırılmaktadır. Herhangi bir değişiklik yoksa mesajın gerçekten grup

sunucusundan geldiği ve yol üzerinde değiştirilmediği anlaşılmaktadır. Bu

mekanizma grup sunucusunun özel anahtarı kötü niyetli kişilerin eline geçmediği

sürece kusursuz işlemektedir. İmza işlemi, örneğin DES kullanıldığında, anahtar

143

şifreleme işleminden iki kat daha fazla zaman almaktadır. Bu yüzden güvenliğin

bozulmadan imza işlemlerinin sayısının düşürülmesi büyük önem taşımaktadır.

Bunun sağlanması için birkaç mesaj tek bir imzalama işlemi ile gönderilmektedir.

Özetleri d1, d2, d3, d4 olan dört tekrar anahtarlama mesajı düşünüldüğünde ilk olarak

d1 ve d2’den oluşan D12 mesajı oluşturulmaktadır. Daha sonra, bu mesajın özeti d12 =

h(D12) yardımı ile bulunmaktadır. Üçüncü ve dördüncü mesaj için de aynı işlemler

uygulanmakta ve d34 özeti bulunmaktadır. Daha sonra d12 ve d34’ten oluşan D1-4

mesajı oluşturulmakta ve d1-4 = h(D1-4) hesaplanmaktadır. d1-4 hesaplandıktan sonra

grup sunucusu d1-4’ü özel anahtarı ile imzalamakta ve bu imzayı D1-4, D34 ve M4 ile

birleştirerek M4’e ihtiyacı olan bir kullanıcıya yollamaktadır. Kullanıcı, ilk olarak d1-

4 üzerindeki imzayı çözmekte ve d1-4’ün gerçekten D1-4’ün özeti olup olmadığını

kontrol etmektedir. Daha sonra D1-4 içerisinde bulunan d34’ün gerçekten D34’ün özeti

olup olmadığının ve D34 içerisindeki d4’ün M4’ün özeti olup olmadığının kontrolleri

yapılmaktadır. Bu yöntem dört mesajdan m mesaja kolayca genişletilebilmektedir.

Gruptaki üye sayısının 8192 olduğu, şifreleme için DES-CBC, mesaj özetleri için

MD5 ve sayısal imza için 512 bitlik RSA kullanılan bir ortamda bu yöntemin

kullanılması sonucu işlem süresi yaklaşık 10 kat azalmakta (140.1 milisaniyeden

14.5 milisaniyeye) ve mesaj büyüklüğü 50-70 bayt arası artmaktadır [89]. Bu

yöntemin grup odaklı tekrar anahtarlama stratejisi için bir şey ifade etmeyeceği

unutulmamalıdır.

Çok hedefli iletimin güvenli hale getirilmesi için anahtar çizgelerinin kullanımı

sayesinde pek çok anahtar üretilerek bir hiyerarşi oluşturulmaktadır. Bu hiyerarşide

bireysel anahtarlar yapraklarda, grup anahtarı kökte ve alt grup anahtarları ortadaki

düğümlerde bulunmaktadır. Bütün kullanıcılar için tek bir grup sunucusu

bulunmaktadır. Iolus mimarisindeki gibi bir sunucu hiyerarşisi bulunmamakta fakat

her bir kullanıcıya birden fazla anahtar dağıtılmaktadır. Grup üyeliğinin değişmesi

sonucu yeni anahtarların gruba dağıtılması herhangi bir ölçeklenebilirlik sorunu

yaratmamaktadır. Bunun sebebi sunucu maliyetinin O(log(n)) ve kullanıcı

maliyetinin O(1) olmasıdır. LKH algoritmasının analizi sonucu merkezi yapının

saldırılar için büyük bir potansiyel oluşturduğu bulunmuştur. Bu yapı, grup

sunucusunun ve görevlerinin (veya görevlerinin bir kısmı) başka bir varlığa

devredilmemesi sonucu ortaya çıkmaktadır. LKH algoritması üzerinde yapılan

deneyler sonucunda ağaç dizilimli çizgelerde optimum anahtar derinliği dört olarak

144

bulunmuştur [84]. Buna ek olarak grup sunucusu tarafında grup odaklı tekrar

anahtarlama stratejisi en yüksek performansı verdiği görülmüştür. Grup odaklı

stratejiyi anahtar odaklı strateji takip etmektedir. Kullanıcı tarafında ise durum tam

tersidir. Ancak bu durum kullanıcı sistemleri için bir sorun yaratmamaktadır.

Algoritma üzerinde yapılan analiz sonucunda çizgelere yapılan eklemelerin nasıl ve

nereye yapılacağına dair herhangi bir prosedürün olmadığı ortaya çıkmaktadır.

Çizgelerin optimum olabilmesi için eklemelerin dengeli şekilde yapılması

gerekmektedir. Aksi halde dengesiz bir çizge oluşacak ve üyelik değişimlerinde

yenilenmesi gereken anahtarların sayısı gereksiz yere artacaktır.

Grup anahtar yönetimi için kullanılan bir diğer algoritma, tek yönlü işlev ağaçlarıdır

(One Way Function Trees, OFT) [78]. OFT algoritması sayesinde gruptan ayrılma

veya gruba katılım işlemleri için iletilmesi gereken bit sayısı LKH algoritmasına

oranla yarıya inmektedir. Ayrıca grup anahtarının oluşturulmasına grup üyelerinin de

katılımına izin verilmektedir. Tek yönlü işlev ağacı her bir düğümün iki anahtar ile

ilişkilendirildiği ikili bir ağaçtır. Bu anahtarlar k_a düğüm anahtarı ve k’_a

perdelenmiş anahtardır. Bu iki anahtar arasında k’_a = g( k_a ) ilişkisi

bulunmaktadır. Perdelenmiş anahtar, düğümün anahtarının perdeleme işlevinden

geçirilmiş halidir. k’_a anahtarı verildiğinde, k_a anahtarının bulunması işlemsel

olarak imkansıza yakın olduğu için g() işlevine perdeleme (blinding) işlevi

denmektedir. OFT yapısı, grup yöneticisi tarafından yönetilmektedir [15]. Her

yaprak bir grup üyesini temsil etmektedir. Grup yöneticisi, grupta bulunan üyelerden

meydana gelen alt kümelerle haberleşebilmek için simetrik bir şifreleme işlevi (E)

kullanmaktadır. E işlevinde, perdelenmemiş anahtarlar şifreleme için

kullanılmaktadır. İlk olarak rastlantısal olarak üretilmiş anahtarlar bireysel olarak

üyelere atanmaktadır. Bunun için harici bir güvenli kanal kullanılmaktadır. Bu

anahtarlar yaprak düğümlere atanmaktadır. Ağaç içerisinde bulunan her bir dâhili

düğümün iki alt dalı bulunmaktadır. Bu düğümlere karşılık gelen anahtarlar,

k_a = f( g( k_sol( a ), g( k_sağ( a ) ) )

şeklinde hesaplanmaktadır. Burada k_sol() ve k_sağ() işlevleri sol ve sağ alt daldaki

düğümleri ifade etmektedir. g() işlevi daha önce açıklanan perdeleme işlevi, f() işlevi

ise karıştırma (mixing) işlevidir. f() işlevine örnek olarak XOR operasyonu

verilebilir. Kök düğümü ile ilişkilendirilmiş anahtar, grup anahtarı olarak

145

isimlendirilmektedir. OFT algoritmasında güvenliğin sağlanması için grup üyelerinin

anahtar bilgileri kısıtlanmaktadır. Her bir üye, sadece kendi düğümünden köke doğru

olan bütün düğümlerin perdelenmemiş anahtarını ve bu yol üzerindeki düğümlerin

kardeş düğümlerinin perdelenmiş anahtarlarını bilmektedir. Algoritma içerisindeki

bütün işlemlerde bu kurala sadık kalınmaktadır. Şekil 6.13’te örnek bir OFT

gösterilmektedir.

M

Perdelenmemiş anahtarlar

Perdelenmiş anahtarlar

Hesaplanan anahtarlar

Şekil 6.13 – OFT hiyerarşisi

Böyle bir ağaçta, M üyesi kendi düğümü ile kök arasındaki (kök dahil olmak üzere)

düğümlerle ilişkilendirilmiş perdelenmemiş anahtarları ve bu düğümlerin kardeş

düğümleri ile ilişkilendirilmiş perdelenmiş anahtarları bilmektedir. Üyenin bireysel

anahtarı ve perdelenmiş anahtarlar grup yöneticisi tarafından üyeye iletilmektedir.

Üye, bu anahtarlar yardımı ile kendi düğümünden köke kadar olan düğümlerin

perdelenmemiş anahtarlarını hesaplayabilmektedir. M üyesinin bilgisi sadece bu

anahtarlarla sınırlıdır aksi halde üye diğer düğümlere ilişkin anahtarları

hesaplayabilmekte ve böylece güvenlik açıkları oluşmaktadır. Güvenliğin

korunabilmesi için perdelenmiş anahtarlar sadece ilgili üyelere gönderilmelidir.

Perdelenmiş k’_a anahtarı değiştiği zaman yeni anahtarın, eski anahtarı bilen bütün

üyelere dağıtılması gerekmektedir. Bu üyeler, a düğümünün kardeşinin altında

bulunan düğümlere bağlı olan ve a düğümünün kardeş düğümü olan s düğümünün

perdelenmemiş k_s anahtarını bilen üyelerdir. Yeni k’_a anahtarının bu üyelere

iletilebilmesi için mesaj, k_s anahtarı ile şifrelenerek iletilmektedir. Bu mesajı sadece

s düğümü altındaki üyeler deşifre edebilmekte ve böylece güvenlik sağlanmaktadır.

Gruba yeni üyelerin katılmasıyla ağaç büyümektedir. Ağacın boyunun (h) minimum

düzeyde tutulabilmesi için dengenin korunması gerekmektedir. Bu sebeple yeni

146

üyeler için köke en yakın yapraklar seçilmektedir. Seçilen yaprak düğümü (a) ikiye

bölünmekte ve altında sol( a ) ve sağ( a ) olmak üzere iki yeni yaprak düğüm

oluşturulmaktadır. Daha önceden a düğümü ile ilişkilendirilmiş olan üye sol( a ),

yeni üye ise sağ( a ) düğüm ile ilişkilendirilmektedir. Her iki üye için de yeni

anahtarlar üretilmektedir. Eski üyenin tekrar anahtarlanmasında amaç, üyenin diğer

üyelerle işbirliği yaparak ve bildiği anahtarları kullanarak ilgisi olmayan bir

düğümün perdelenmemiş anahtarını bulabilme olasılığıdır. Gruba yeni bir üyenin

katılımı öncesinde ve sonrasında OFT içerisindeki değişiklikler şekil 6.14’te

gösterilmektedir.

a

Katılımdan önce

a M

Katılımdan sonra

Şekil 6.14 – OFT algoritmasında gruba yeni bir üyenin katılması

Bir üyenin gruptan ayrıldıktan sonra uygulanması gereken prosedür katılım için

uygulanan prosedür ile büyük benzerlik göstermektedir. Eski üyenin kardeş yaprak

düğümünde bulunan üye, kök düğüme bir adım yaklaştırılmakta ve yeni bir anahtar

verilmektedir. Çok hedefli iletim grubu oluşturulduktan sonra iletime hazır hale

getirilmesi gerekmektedir. Bu işlem iki bölümden oluşmaktadır. İlk bölümde grup

yöneticisi, düğümlere ilişkin perdelenmiş anahtarları, o düğümün kardeş düğümüne

ilişkin perdelenmemiş anahtarlarla şifreleyerek gruba göndermektedir. Böylece

sadece kardeş düğümdeki ve kardeş düğümün altındaki üyeler o düğüme ilişkin

perdelenmiş anahtarı öğrenmektedir.

OFT algoritması, grup yöneticisinin varlığı dolayısıyla merkezi bir yapıya sahiptir.

Ayrıca yaprak düğümlere ilişkin anahtarlar o yaprağın üyesi ve grup yöneticisi

tarafından ortaklaşa üretilmektedir ve dolayısıyla her üye, grup anahtarının

üretilmesine katkıda bulunmaktadır. Gruba yeni bir üye katıldığında veya gruptan bir

üye ayrıldığında harcanan kaynakların dağılımıyla ilgili bilgiler tablo 6.3’te

verilmektedir. Tabloda ağacın boyu h ile (h = log(n)), grup üye sayısı n ile ve

anahtarın bit olarak uzunluğu K ile gösterilmektedir. Görüldüğü üzere gruba üye

147

eklenmesi veya gruptan bir üyenin ayrılması sırasında yapılan işlemler grup

üyelerinde ve grup yöneticisinde aynı zamanı almaktadır. Kullanılan bellek miktarı,

yöneticide üye sayısıyla doğrusal olarak artmaktadır. Anahtarlama sırasında üyeler

herhangi bir mesaj yollamamakta, grup yöneticisi ise toplam (h x K + h) bit

yollamaktadır.

Tablo 6.3 – OFT algoritmasındaki maliyetler

Kaynak türü Üyedeki maliyet Yöneticideki maliyet

Zaman h h

Bellek h x K 2 x n x K

İletilen bit sayısı 0 h x K + h

Üretilen rastlantısal bit sayısı 0 K

İletim biçiminin (ek yük haricinde) yollanan bit sayısına herhangi bir etkisi

bulunmamaktadır. Yeni anahtarlar için üretilen bit sayısı, anahtar uzunluğu olan

K’ya eşittir ve üretim işlemi sadece grup yöneticisinde yapılmaktadır.

OFT algoritmasında, yeni bir çok hedefli iletim grubu kurulurken ilk olarak grup

üyelerinin gruba kaydolması (enroll) gerekmektedir. Bunun için bütün üyelerin grup

yöneticisi ile iletişime geçip bireysel anahtarlarını edinmesi gerekmektedir. Bu

işleme grup indüklemesi denmektedir [78]. Bu anahtarlara bireysel anahtarlar

denmektedir ve bireysel anahtar oluşturulması için izlenebilecek en basit yol IKE

protokolünün kullanılmasıdır. Fakat IKE kullanıldığında yönetilmesi gereken

anahtarların sayısı grup üyelerinin sayısıyla doğrusal olarak artmakta olduğundan bu

çözüm ölçeklenebilir değildir. Grup indükleme sürecinin ölçeklenebilir olabilmesi

için farklı bir yol izlenmektedir. Bu yola paylaştırılmış indüksiyon (amortized

induction) denmektedir [78]. Böylelikle ölçeklenebilirliğin yanı sıra sistemlerin

birden fazla gruba üye olduğu durumlarda zaman tasarrufu da sağlanmaktadır.

Paylaştırılmış indüklemenin uygulanabilmesi için çeşitli varsayımlar yapılmaktadır.

Çok hedefli iletim ile ilgilenen sistemlerin N uzayı içerisinde bulunduğu ve bu uzay

içerisinden toplam G adet grubun oluşturulduğu varsayılmaktadır. Her grubun en

fazla n üyesi bulunmaktadır. Bu koşullar altında N’in, G x n’den oldukça küçük

olduğu varsayılmaktadır. Bir başka deyişle N içerisinde bulunan sistemlerin pek çok

gruba üye olduğu varsayılmaktadır. Paylaştırılmış indükleme bu koşullar altında

ciddi kazançlar sağlamaktadır. G adet grup için ayrı ayrı grup yöneticileri ve gruba

148

kaydolmayı kontrol eden bir sistem yöneticisi bulunmaktadır. Bu gruplarla ilgili

anahtarlar, OFT algoritması sayesinde üretilmektedir. Grup üyelerinin grup

yöneticileriyle (ayrı ayrı) haberleşerek üye oldukları her bir grup için bireysel bir

anahtar edinmesi gerekmektedir. Böyle bir yapıda paylaştırılmış indüksiyon

kullanımı sayesinde, anahtar değiş tokuşu G x n’den N’e inmektedir. Bir sistem, N

uzayına dahil olduğunda ilk olarak sistem yöneticisi ile haberleşerek kendine ait bir

bireysel anahtar edinmektedir. İkinci safhada bu sistem, herhangi bir gruba üye

olmak istediğinde grup yöneticisi ile temasa geçerek grup bireysel anahtarını

oluşturmaktadır. Grup bireysel anahtarı, sistemin bireysel anahtarı, sistemin ve

grubun ismi kullanılarak tek yönlü işlev sayesinde üretilmektedir. Bu anahtar

matematiksel olarak KA_M = F( K_M, M, A) olarak ifade edilmektedir. Burada

KA_M, A grubuna ait M üyesinin bireysel anahtarını, M üyenin ismini, A grubun

ismini ve K_M ise üyenin sistem yöneticisiyle haberleşerek edindiği bireysel

anahtarı göstermektedir. F işlevi ise tek yönlü bir işlevdir. F işlevi için sağlanması

gereken koşul, argümanlarından ikisi verildiğinde çıktısının bulunamamasıdır. MD5

işlevi F, için örnek olarak verilebilir. Grup yöneticileri operasyonlarına başlamadan

önce sistem yöneticisi ile haberleşerek kendilerine özel bir anahtar edinmektedir.

Herhangi bir üyenin bir gruba üye olması söz konusu olduğunda sistem yöneticisi

grup bireysel anahtarını hesaplayarak bu bilgiyi grup yöneticisine göndermektedir.

Gönderim işlemi sırasında bilgiler grup yöneticisinin özel anahtarı ile şifrelenmekte

ve tek hedefli olarak iletilmektedir.

OFT algoritmasında kullanılan tek yönlü işlevler, LKH algoritması geliştirmek için

de kullanılabilmektedir. Böylece LKH algoritmasındaki üye ekleme işlemlerinin

süresi sabit hale gelmektedir. Yeni grup anahtarı eski anahtarın tek yönlü bir işlevden

geçirilmesi sayesinde bulunmaktadır. Daha sonra bu anahtar yeni üyeye tek hedefli

iletim ile gönderilmekte ve çok hedefli iletim kullanılarak yeni anahtarların

dağıtıldığına dair gruba haber verilmektedir. Bu tekniğin kullanıldığı LKH

algoritması LKH+ olarak isimlendirilmektedir. LKH+ tekniğinde sadece log(n) adet

anahtarın şifrelenerek iletilmesi söz konusudur. Bu sayı, LKH algoritmasındaki

sayının yarısı kadardır. LKH+ algoritması içerisinde kullanılan yöntem, yapısı gereği

sadece gruba yeni üyeler katılırken kullanılabilmektedir. Gruptan ayrılma

işlemlerinin karmaşıklığının azaltılabilmesi için dahili düğümler için gereken yeni

anahtarlar tek bir rastlantısal bilgi (rb) kullanılarak hesaplanmaktadır [92]. Şekil

149

6.15’te yeni anahtarların rb yardımıyla üretilmesi gösterilmektedir. Şekil’de E

üyesinin ayrılması gösterilmektedir. Üye ayrıldıktan sonra, GDAS, uzunluğu anahtar

uzunluğuna eşit olan rastlantısal bir bilgi (rb) üretmektedir. Daha sonra rb,

uzunluğunun iki katına çıkarılması için yarı rastlantısal (pseudo-random) bir işlevden

geçirilmektedir [93]. Bu işlev PRF(rb) olarak isimlendirilmektedir ve çıktısı

L(rb)R(rb)’dir. PRF(rb) işlevi |L(rb)| = |R(rb)| = |rb| koşulunu sağlamaktadır. Buna ek

olarak, R(rb) ve L(rb) verildiği zaman rb’nin bulunması işlemsel olarak imkansızdır.

GDAS varlığı yeni anahtarları üretmek için PRF() işlevini rb üzerinde defalarca

uygulamaktadır. Bu sebeple bu metoda, tek yönlü işlev zincirlemesi (one-way

function chaining, OFC) denmektedir.

C

Ayrılmadan önce

BA

D E

ka-e

kc-e

kde

kd ke

kc

C

Ayrılmadan sonra

BA

ka-d

kcd = R(rb)

kc

kab

D

kd

Yeni

anahtarlar

kcd = R(rb)

ka-d = R(L(rb))

kd{rb}

kc{rb}

kab{L(rb)}

Şekil 6.15 – LKH algoritmasında OFC kullanımı

Şekil 6.15’te gösterilmekte olan OFC örneğinde E üyesi gruptan ayrılmaktadır.

GDAS, ilk olarak rb’yi üretmektedir. Bu bilgi kc ve kd anahtarları ile şifrelenerek C

ve D üyelerine yollanmaktadır. L(rb) ise kab ile şifrelenerek A ve B üyelerine

gönderilmektedir. kcd ve ka-d (yeni) anahtarları, kcd = R(rb) ve ka-d = R(L(rb) işlevleri

kullanılarak rb’den dolaylı olarak hesaplanmaktadır. Böylece C ve D üyeleri hem kcd

hem de ka-d anahtarlarını hesaplayabilmekte fakat A ve B üyeleri sadece ka-d

anahtarını hesaplayabilmektedir. Böylece güvenlik yapısı korunmakta ve gruptan

ayrılma karmaşıklığı azaltılmaktadır.

LKH+ algoritmasında kullanılan yönteme benzer bir yöntem OFT algoritmasında da

uygulanabilmektedir. Oluşan yeni algoritma, OFT+ olarak isimlendirilmektedir [78].

Gruba üye olmak isteyen sistemlerin üyelik işlemleri ivedi olarak yapılmamakta ve

sistemler belirli bir süre bekletilmektedir. Bekletilen sistemler, bir sonraki tüm tekrar

anahtarlama işlemi sırasında gruba alınmaktadır. Bir sonraki tüm tekrar anahtarlama

işlemi genellikle bir üyenin gruptan çıkarılması sırasında gerçekleşmektedir.

Böylelikle yeni sistemler gruba dahil edilirken işlem bir liste üzerinden yapıldığı için

150

pek çok sistem tek bir seferde gruba katılmaktadır. Yeni üyeler ağaç içerisinde aynı

yerlere yerleştirilmekte olduğu için anahtarlama işlemleri daha basit hale

gelmektedir. Buna ek olarak OFT+, katılım için bekletilen üyelerin gruba katılmadan

gruptan çıkarılmasını da mümkün kılmaktadır. Grup üyelik değişimlerinde OFT+

kullanılmasının maliyeti, ortak soy ağaçları (Common Anchestor Tree, CAT)

kullanılarak hesaplanmaktadır [78]. Toplam R üyenin, ağacın tek bir yerine bir

kerede eklenmesi için (2 x R + log(n/R)) adet düğüm oluşturulması gerekmektedir.

Burada n, ağaçtaki toplam düğüm sayısını göstermektedir.

Çok hedefli iletimin güvenli hale getirilebilmesi için pek çok adım atılmıştır fakat bu

adımlardan sadece bazıları günümüze kadar gelebilmiştir. Grup anahtar yönetimi

konusunda çözülmesi gereken en büyük sorun ölçeklenebilirliktir. Yapılan analizler

sonucu oluşturulan grup anahtar yönetimi metotlarının beş farklı gruba ayrılabileceği

görülmüştür. Bu gruplar basit metotlar, bilgiye dayalı yaklaşımlar, hibrit metotlar,

hiyerarşik yapılar ve diğer tekniklerdir. Basit metotlarda karmaşıklık, gruptaki üye

sayısıyla doğrusal olarak artmaktadır. Bilgi yaklaşımlı metotlarda kötü niyetli

kişilerin kontrolünde olan pek çok üyenin bir araya gelip güvenliği ihlal edememesi

için ileriye dönük güvenliğin sağlanması gerekmektedir. Bunun için kullanılması

gereken bellek miktarı, gruptaki üye sayısıyla üstel bir şekilde artmaktadır. Bu durum

hibrit yaklaşımlar için de geçerlidir. Gruptaki üye sayısı yüksek olduğu zaman

(birkaç binden fazla) ölçeklenebilirlik açısından sadece hiyerarşik metotlar

kullanılabilmektedir. Hiyerarşik metotlar anahtar hiyerarşisi ve düğüm hiyerarşisi

olarak ikiye ayrılmaktadır [94]. Her iki gruptaki karmaşıklık, üye sayısıyla

logaritmik olarak değiştiği için ölçeklenebilirdir. Düğüm hiyerarşisi, Iolus

mimarisinde kullanılmaktadır [84]. Iolus mimarisi yüksek ölçeklenebilirlik

sağlamaktadır fakat yapı içerisinde bulunan pek çok şebeke cihazlarına

güvenilmektedir. Yönetim sorumluluğunun şebeke cihazlarına aktarılması, güvenlik

sorumluluklarının farklı yönetimsel sistemlere devredilmesi anlamına gelmektedir.

Çok hedefli iletimde içerik sağlayıcı ile şebeke sağlayıcısının farklı

organizasyonların yönetiminde olması, sorumlulukların dağıtılmasında sorunlar

yaratmaktadır. Dolayısıyla Iolus mimarisi sadece içerik sağlayıcı ile şebeke sağlayıcı

varlıkların tek bir yerden yönetildiği durumlar için uygun olmaktadır. Günümüzde

böyle bir yapıya çok ender rastlanmaktadır. Internet’in doğası gereği şebeke

sağlayıcıları ile içerik sağlayıcıları farklı yönetimsel organizasyonlardır. Hiyerarşinin

151

düğümler yerine anahtarlar üzerine kurulduğu grupta ise LKH, LKH+, OFT ve

OFT+ algoritmaları bulunmaktadır. LKH algoritmasında anahtarlar yukarıdan

aşağıya doğru itilmektedir. OFT algoritmasında ise anahtarlar ağacın yapraklarından

köke doğru hesaplanmaktadır, dolayısıyla grup anahtarının oluşturulmasında grup

üyeleri aktif rol almaktadır. Grup üye işlemlerinde LKH ile kıyaslandığında, OFT

algoritmasında yarı yarıya daha az bit yollanmaktadır [78]. LHK+ ve OFT+

algoritmalarında gruba yeni bir üye katılması için uygulanması gereken işlemlerin

tamamı sabit bir süre içerisinde yapılabilmektedir. LKH+ algoritması OFT+

algoritmasına kıyasla daha basittir fakat OFT+ algoritmasının karmaşık olması

iletilen bit sayısının daha az olmasını sağlamaktadır. Üye sayısı fazla olmayan

gruplar için tek bir anahtar dağıtım merkezi (TADM) kullanımı tercih edilmelidir.

Gruptaki üye sayısı az olduğu için ölçeklenebilirlik önemini yitirmekte ve grup

anahtar yönetimi tek bir varlık kullanılarak sağlanabilmektedir. Bu algoritmalara ek

olarak grup üyelerinin gruptan ne zaman ayrılacağının belli olduğu senaryolarda

MARKS algoritmasının kullanımı uygun olmaktadır. MARKS, çok hedefli iletimin

özel bir bölümüne girdiği için diğer algoritmalarla karşılaştırılmamıştır. Bu

algoritmaların birbirleriyle karşılaştırılması için tablo 6.4 hazırlanmıştır.

Algoritmalar güvenlik karmaşıklığı açısından karşılaştırıldığında, karmaşıklığın en

az olduğu algoritma TADM’dir. Algoritmalar, karmaşıklık derecesine göre TADM,

LKH, LKH+, OFT ve OFT+ olarak sıralanabilmektedir. En karmaşık algoritma

OFT+’dır. OFT ve OFT+ algoritmasında anahtarların üretilmesinde grup üyeleri de

yer almaktadır fakat TADM, LKH ve LKH+ algoritmalarında anahtarlar sadece

sorumlu varlıklar tarafından üretilmekte ve üyelere dağıtılmaktadır. Tabloda

gösterilmekte olan bilgilerden n gruptaki üye sayısını, h gruba ilişkin ağacın

yüksekliğini, K anahtarın bit cinsinden uzunluğunu göstermektedir. Ağacın dengeli

olduğu durumlarda h = log(n) ifadesi sağlanmaktadır. Burada LKH+ ve OFT+

algoritmalarında R adet üye katılım isteği geciktirilerek birlikte işlendiği zaman

gruptan üye çıkarılması işlemi ayrıca (2R + log(n/R))K bit daha iletilmesine sebep

olacaktır [78]. LKH ve LKH+ algoritmalarında gecikme süreleri fazla değildir (tablo

6.4) fakat anahtarsız tek yönlü işlevler şifreleme işlevlerinden daha az zaman aldığı

için OFT algoritmasındaki birim zaman LKH(+)’ye oranla daha az olacaktır.

Algoritmalar yukarıda belirtilen kıstaslara ek olarak gerektirdikleri bellek

miktarlarına göre de kıyaslanabilmektedir.

152

Tablo 6.4 – Grup anahtar yönetimi algoritmalarının karşılaştırılması

TADM LKH LKH+ OFT OFT+

Grup BaĢlangıcı

Toplam gecikme n 2n 2n 3n 3n

İletilen bit sayısı nK 2nK + h 2nK + h 2nK + h 2nK + h

Tek hedefli iletilen toplam bit sayısı 0 0 0 0 0

Grup denetleyicisindeki hesaplamalar n 2n 2n 3n 3n

Maksimum üye hesaplaması 1 h h 2h 2h

Üretilen rastlantısal bit sayısı K 2nK 2nK nK nK

Gruba Üye Katılması

Toplam gecikme n 2h 1 3h 1

İletilen bit sayısı nK 2hK + h H hK + h H

Tek hedefli iletilen toplam bit sayısı 0 0 K hK K

Grup denetleyicisindeki hesaplamalar n 2h 1 3h 1

Maksimum üye hesaplaması 1 h 1 2h 1

Üretilen rastlantısal bit sayısı K hK 0 K 0

Gruptan Üye Çıkarılması

Toplam gecikme n 2h 2h 3h 3h

İletilen bit sayısı nK + h 2hK + h 2hK + h hK hK + h

Tek hedefli iletilen toplam bit sayısı 0 0 0 0 0

Grup denetleyicisindeki hesaplamalar n 2h 2h 3h 3h

Maksimum üye hesaplaması 1 h h 2h 2h

Üretilen rastlantısal bit sayısı K hK hK K K

Tablo 6.5’te bu kıyaslama gösterilmektedir. Algoritmaların bellek gereksinimleri

yönünden karşılaştırılması sonucu TADM haricindeki algoritmaların harcadıkları

bellek miktarının aynı olduğu görülmektedir. Bu durumda birbiri üzerine üstünlüğü

olmamaktadır.

Tablo 6.5 – Algoritmaların bellek gereksinimi yönünden karşılaştırılması

TADM LKH LKH+ OFT OFT+

Grup yöneticisindeki bellek miktarı nK 2nK 2nK 2nK 2nK

Üyelerdeki maksimum bellek miktarı 2K hK hK hK hK

153

6.2.2. Kaynak Kimlik Doğrulaması ve EriĢim Kontrolü

Çok hedefli iletim kullanılması sayesinde alıcılara ulaştırılan bilgilerin güvenliği

IRTF SMuG araştırma grubu ve IETF MSEC çalışma grubu içerisinde ele alınan

problem alanlarından ilkidir. Bu alan veri dönüşümleri olarak isimlendirilmektedir

[35]. Veri dönüşümleriyle ilgili olarak üç farklı alt bölüm tanımlanmaktadır. Bu alt

bölümler veri şifreleme, kaynak kimlik doğrulaması ve grup kimlik doğrulamasıdır.

Güvenli bir çok hedefli iletim uygulamasında, veri dönüşümleri alanında üç temel

işlevin sağlanmış olması gerekmektedir. Bu işlevlerden ilki grup gizliliğidir

(secrecy). Grup gizliliği, iletilen verinin sadece grup üyeleri tarafından erişilebilir

olmasının sağlanmasıdır. Bir başka deyişle, grup gizliliği sayesinde erişim kontrolü

işlevleri de sağlanmaktadır. Bunun sağlanması için, çok hedefli olarak iletilecek

bilginin iletilmeden önce sadece grup üyeleri tarafından bilinen bir anahtar ile

şifrelenmesi yöntemi kullanılabilmektedir. Grup kimlik doğrulaması, veri

dönüşümleri alanında ikinci önemli işlevdir. Grup kimlik doğrulaması ile birlikte,

grup üyesi olan herhangi bir sistem çok hedefli olarak aldığı verinin grup üyelerinden

herhangi biri tarafından yollandığını tespit edebilmektedir. Fakat bu tür kimlik

doğrulamasında üye, verinin kaynağını doğrulayamamaktadır. Verinin kaynağının

doğrulanması için kaynak kimlik doğrulaması kullanılmalıdır. Kaynak kimlik

doğrulamasında üyeler aldığı verinin hangi sistem tarafından gönderildiğini tespit

edebilmektedir. Kaynak kimlik doğrulaması veri doğrulamasını da beraberinde

getirmektedir. Verinin kaynağı, veri yol üzerinde (üçüncü taraflarca) değişikliğe

uğramadığı takdirde doğrulanabilmektedir. Dolayısıyla alınan verinin kaynağı

doğrulanabildiği takdirde yol üzerinde değişikliğe uğramadığı anlaşılmakta ve veri

doğrulaması da otomatik olarak sağlanmaktadır. Çok hedefli iletim uygulamaları

birbirinden çok farklı şekillerdedir. Genel olarak bakıldığında, çok hedefli iletim

uygulamaları yığın veri transferi ve ya bilgi akımı transferi olarak özelleşmektedir.

Bu çeşitlilik, güvenlik için tek bir altyapı oluşturulmasını engellemektedir.

Günümüzde veri dönüşümleri problem alanına girmekte olan işlevlerin hepsi

uygulamalar tarafından desteklenmemektedir. Bu işlevlerden hangilerinin

kullanılması gerektiği uygulamadan uygulamaya değişmekte ve sistem yöneticileri

tarafından karalaştırılmaktadır.

154

Kaynak kimlik doğrulaması ve veri doğrulaması işlevleri için pek çok farklı

mekanizma bulunmaktadır. Bu mekanizmalar sayısal imzaların kullanılması, akım

imzaları [95], akış (flow) imzaları [82], hibrit imzalama teknikleri [96], zamanlanmış

mesaj doğrulama kodları (Message Authentication Codes, MACs) [97,98] ve

asimetrik MAC kullanımıdır [63]. Güvenlik için sayısal imzaların kullanımı en

güvenli ve kesin çözümdür. Sayısal imza mekanizması anahtar üretimi, imzalama ve

doğrulama (verification) safhalarından oluşmaktadır. İmzalayan taraf, ilk olarak imza

ve doğrulama işlemlerinde kullanılmak üzere bir anahtar çifti üretmektedir. Bu

anahtar çifti, imzalama işlemi için kullanılan ki, ve doğrulama işlemi için kullanılan

kd anahtarıdır [82]. Bu anahtarlar literatürde özel anahtar ve açık anahtar olarak

geçmektedir. İmzalama işlemi için kullanılan anahtar sadece imzalayan sistem

tarafından bilinmektedir. Doğrulama işlemi için kullanılan anahtar ise, imzalı verinin

kullanıldığı bütün sistemler tarafından bilinmektedir. İmzalama safhasında mesaj,

imzalama işlevinden geçirilmektedir. Bu işlevin çıktısı mesajın imzasıdır. Daha sonra

bu imza mesajla birleştirilmekte ve alıcılara ulaştırılmaktadır. Alıcı sistemler, mesajı

aldıktan sonra kd anahtarı ile birlikte doğrulama işlevini uygulamaktadır. Bu işlemin

çıktısı “doğru” olduğu takdirde alıcı sistemler mesajın gerçekten kaynak sistem

tarafından gönderildiğini ve yol üzerinde herhangi bir değişikliğe uğramadığını tespit

etmektedir. Buna ek olarak imza için kullanılan özel anahtar ki sadece kaynak

sistemde bulunduğu için kaynak sistemin mesajı gönderiminin reddedilmesi söz

konusu değildir. İmzalama mekanizmasının bu şekilde kullanılması, harcanan

kaynaklar bakımından pratik olmamaktadır. Pek çok uygulamada imza işlemi, mesaj

özet (digest) işlevlerinden bir tanesiyle birleştirilmektedir. Mesaj özet işlevlerine

örnek olarak MD5 algoritması verilebilir [91]. Böyle bir uygulamada ilk olarak

mesaja h() özet işlevi uygulanmakta ve sabit uzunlukta bir özet elde edilmektedir.

İmza safhasında mesaj imzalanmamakta, daha küçük olan özeti imzalanmaktadır.

Özet çıkarma işleminin imzalama işleminden çok daha kısa sürede yapıldığı göz

önüne alındığında kimlik doğrulaması ve veri doğrulaması daha hızlı

yapılabilmektedir. Yığın veri transferi uygulamalarında, iletilecek veri gönderim

öncesinde bilinmektedir. Bu tür uygulamalarda kaynak, yığının tamamına ilişkin bir

özet hesaplamakta ve daha sonra bu özet imzalamaktadır. Bu tür akımlara “ya hepsi

ya hiçbiri” akımlar (all or nothing) denmektedir [6,82]. Ya hepsi ya hiçbiri

akımlarında, alıcı sistemler verinin doğruluğunu tespit etmek ve kaynak kimlik

kontrolü yapabilmek için iletimin tamamı bitene kadar beklemek durumundadır.

155

Bunun sebebi, imzalanan özetin verinin tamamına ait olmasıdır. Bu tür

uygulamalarda transfer sırasında veri içerisindeki tek bir bit değişse dahi, kontroller

başarısız olmakta ve transferin tekrar yapılması ihtiyacı doğmaktadır. Yığın veri

akımı yerine bilgi akımı transferi yapılan uygulamalarda durum daha da karmaşık

hale gelmektedir. İletilmesi gereken veri önceden bilinmediği için her mesajın ayrı

ayrı imzalanması ve alıcı tarafta doğrulanması gerekmektedir. Bu yaklaşım

kaynakların yüksek kullanımını da beraberinde getirmektedir. Mesaj boyutunun u

bayt olduğu bir uygulamada matematiksel olarak imzalama hızı 1/(Tö(u) + Timza)

bayt/saniye, doğrulama hızı ise 1/(Tö(u) + Tdoğrulama) bayt/saniye olacaktır. Burada Tö

özet çıkarma, Timza imzalama, Tdoğrulama ise alıcı taraftaki doğrulama işlemi için

harcanan süredir. Sayısal imzaların üzerinde yapılan analiz sonucu her bir mesajın

kaynak tarafında imzalanması ve alıcı tarafta doğrulanması, sistemlerdeki işlem gücü

ve hafıza kapasitesi göz önüne alındığında sayısal imzaların bu şekilde kullanılması

pratik bir çözüm olmamaktadır.

6.2.2.1 Özet Temelli Doğrulama

Kaynak doğrulaması için kullanılan sayısal imzaların getirdiği yükün, akımların bir

bölümü üzerine veya bloklara ayrılmış veriye dağıtılması için pek çok çalışma

yapılmıştır [63,82,95-98]. Blok imzaları ve her bir mesaj üzerinde ayrı ayrı kimlik

doğrulaması yapılması [82], bu çalışmalardan biridir. İletilmek istenen veri ilk olarak

paketlere ayrılmaktadır. Bu paketler blok olarak isimlendirilen gruplar içerisinde

toplanmaktadır. Bu teknikte her bir blok tek bir imzalama işleminden geçirilmekte ve

dolayısıyla yük azaltılmaktadır [19]. Paketlerin özetleri çıkarılmakta, daha sonra bu

özetler birleştirilerek tek bir bloğun özeti haline getirilmektedir. Her bir pakette

bireysel olarak kimlik doğrulaması yapılması gerektiği için kimlik doğrulama

bilgileri bütün paketler içerisinde bulunmaktadır. Blok özetinin oluşturulması için iki

farklı zincirleme yöntemi kullanılmaktadır. Bu yöntemler, yıldız ve ağaç

zincirlemesidir. Yıldız zincirlemesinde, toplam m paketten oluşan bir blok için m

özet birleştirilmekte ve blok özeti elde edilmektedir. Bu zincirleme türü şekil 6.16’da

verilmektedir. Özet çıkarma işlevi, h() ile gösterilmektedir. Şekil 6.16’da bir blok,

sekiz adet mesajdan oluşmaktadır. Her bir mesajın özeti Dm olarak gösterilmektedir

ve Dm = h(m) olarak hesaplanmaktadır. Blok kendi içersinde yıldız dizilimine sahip

olduğu için blok özeti D1-8 = h(D1,…,D8) şeklinde hesaplanmaktadır. Blok özeti

156

hesaplandıktan sonra imza işlemine geçilmekte ve sadece D1-8 özeti

imzalanmaktadır. Burada imza mekanizması olarak RSA, DSA veya eFFS

kullanılabilmektedir [82].

D1-8

D1D2 D3 D4 D5 D6 D7 D8

Şekil 6.16 – Yıldız zincirleme tekniği

Kimlik doğrulamasının her bir mesaj için ayrı ayrı yapılabilmesi için, iletilen bütün

mesajlarda kimlik doğrulaması bilgilerinin mevcut olması gerekmektedir. Bu

bilgilerin toplamına mesaj imzası denmektedir [82]. Mesaj imzası, blok imzası,

paketin blok içerisindeki yeri ve blok içerisindeki diğer paketlerin özetlerinden

oluşmaktadır. Bu bilgiler ışığında alıcı tarafta kimlik doğrulaması yapılabilmektedir.

Şekil 6.16’da alıcı tarafa ilk olarak üçüncü mesajın ulaştığı varsayıldığında alıcı

sistem, ilk olarak mesajın özetini hesaplamaktadır (D’3). Daha sonra mesaj içerisinde

bulunan diğer mesajların özetleri kullanılarak blok özeti D’1-8 = h(D1, D2, D’3, D4,

D5, D6, D7, D8) seklinde hesaplanmaktadır. Son olarak doğrulama işlemi

kullanılmakta ve mesaj içerisinde bulunan imzalanmış D1-8 ile hesaplanan D’1-8

birbiriyle karşılaştırılmaktadır. İki özetin birbiriyle eşit çıkması, üçüncü mesajın

kimliğinin doğru olduğu anlamına gelmektedir. Bu bilgi doğrulandığı takdirde, alıcı

sistem, o blok içerisinde yer alan bütün mesajların doğruluğunu imza işlemine

başvurmadan sadece özet çıkarma işlemi kullanarak (Dm = D’m) tespit

edebilmektedir.

D1-8

D1 D2 D3 D4 D5 D6 D7 D8

D1-4 D5-8

D5-6 D7-8D3-4D1-2

Şekil 6.17 – Ağaç zincirleme tekniği örneği

157

Bir diğer zincirleme tekniği ise yıldız tekniğini de içine alan ağaç zincirlemesidir.

Ağaç zincirlemesinde blok özeti, ağacın kökü olarak hesaplanmaktadır. Şekil 6.17’de

ağaç zincirlemesine bir örnek gösterilmektedir. Şekilde gösterilmekte olan ağaç için

ilk olarak ikinci seviye özetler D1-2 = h(D1, D2), D3-4 = h(D3, D4), D5-6 = h(D5,D6), D7-

8 = h(D7,D8) şeklinde hesaplanmaktadır. Hesaplamalar, ağacın köküne ulaşılana

kadar D1-4 = h(D1-2, D3-4), D5-8 = h(D5-6, D7-8), ve D1-8 = h(D1-4, D5-8) şeklinde devam

etmektedir. Daha sonra kök özeti D1-8 imzalanmaktadır. Her bir mesaj için bireysel

olarak kimlik doğrulaması yapılabilmesi için, mesaj imzasında; blok imzası, mesajın

blok içerisindeki konumunu belirten bilgi ve mesajın köke giden yolda bulunan

düğümlerin kardeş düğümlerinin özeti bulunmaktadır. Doğrulama işlemi için paketin

köke doğru uzanan yolu kontrol edilmektedir. Şekil 6.17’deki örnekte alıcı, ilk olarak

üçüncü mesajı almaktadır. Alıcı sistem, mesajın özetini (D’3) çıkarmaktadır. İkinci

adımda, üçüncü düğümle ilişkili olan özetler D’3-4 = h(D’3, D4), D’1-4 = h(D1-2, D’3-4)

ve D’1-8 = h(D’1-4, D5-8) şeklinde hesaplanmaktadır. Bu hesaplamaların yapılabilmesi

için gereken D4, D1-2 ve D5-8 özetleri üçüncü paketin içerisinde bulunmaktadır. D’1-8

özeti hesaplandıktan sonra alıcı sistem imza doğrulama işlevini çağırmakta ve işlevin

çıktısı olan D1-8 ile D’1-8 özetlerini karşılaştırmaktadır. Bu karşılaştırma başarıyla

sonuçlandığında alıcı sistem D3, D4, D1-2, D3-4, D1-4 ve D5-8 özetlerinin

doğruluğundan da emin olmaktadır. Bu bilgilerin ön bellekte saklanması sonucu,

ilgili paketler imza doğrulama işlemi olmaksızın doğrulanabilmektedir. Ağaç ve

yıldız tekniklerine ilişkin karşılaştırma şekil 6.18’de verilmektedir.

0.01

0.1

1

x

2 4 8 16 32 64 128

x

x

x

x

x

0.01

0.1

1

x

x

x

x

x

x

x

8. derece

Yıldız x

2. derece

4. derece

Blok boyutu

2 4 8 16 32 64 128

Blok boyutu

Zin

cirle

me

za

ma

nı (m

s)

Alıcı ta

rafı

Zin

cirle

me

za

ma

nı (m

s)

İmza

laya

n ta

raf

Şekil 6.18 – Blok imzalama tekniklerinde imza için harcanan zamanlar

158

Yapılan benzetimler sonucu [82] ortaya çıkan ve şekil 6.18’de gösterilmekte olan

ölçümler sonucunda blok içerisindeki paket sayısının 64 veya daha az olduğu

durumlarda yıldız zincirleme tekniği daha kısa sürede tamamlandığı görülmektedir.

Blok boyutunun 64 paketten daha fazla olduğu durumlarda ağaç zincirlemesi daha

performanslıdır. Bunun nedeni, m paketten oluşan bloklar için yıldız tekniğinde

O(m2) zaman harcanırken ağaç tekniğinde bu zamanın O(mlog(m)) olmasıdır. Alıcı

tarafında ise blokları oluşturan paket sayısından bağımsız olarak, yıldız tekniği her

zaman daha avantajlıdır. Blok imzalama tekniklerinin kullanıldığı uygulamalarda

kaynak tarafında, blok imzalanmadan önce bloğu oluşturan bütün paketlerin hazır

olması gerekmektedir. Bunun sağlanabilmesi için veri, kaynak tarafında bir

önbellekte bekletilmektedir. Önbelleğin blok içerisindeki mesaj sayısını alabilecek

büyüklükte olması gerekmektedir. Yapılan incelemeler sonucunda blok imzama

işlemi tamamlandıktan sonra verinin ivedi bir şekilde gönderilmesinin öbeklenmeye

sebep olabileceği bulunmuştur. Öbeklenme sonucunda paket kayıpları meydana

gelebilmektedir. Blok imzalama teknikleri, yukarıda sıralanan dezavantajlarının yanı

sıra pek çok avantaj sağlamaktadır. Blok içerisindeki mesaj sayısı arttıkça,

imzalanması gereken blok sayısı azalmaktadır. Ayrıca alıcı tarafında herhangi bir

önbellek ihtiyacı bulunmamaktadır. Alıcı sistemler, paketleri aldıkları anda kimlik

doğrulaması yapabilmektedir. Buna ek olarak bloklar, kaynak tarafından imzalandığı

için gönderimin reddedilmesi ihtimali ortadan kalkmaktadır.

Bilginin akım halinde iletildiği çok hedefli iletim uygulamalarında, verinin

doğrulanması için kullanılan bir başka yol ise özet zincirlemesidir (hash chaining)

[95]. Bu yöntemin uygulanabilmesi için iletilecek verinin önceden hazır olması

gerekmektedir. Kaynak sistem, ilk olarak veriyi toplam n adet bloğa ayırmaktadır.

Daha sonra ilk bloğun sabit uzunluktaki özeti (örneğin MD5 algoritması ile)

hesaplanmaktadır. Bu özet imzalanarak alıcı sistemlere gönderilmektedir. İlk blok

gönderilmeden önce bir sonraki bloğun özeti mesaja eklenmektedir. İkinci blok

gönderilirken, sonuna üçüncü bloğun özeti eklenmektedir. Bu işlem son bloğa kadar

devam etmekte ve son blok herhangi bir özet eklenmeden gönderilmektedir. Şekil

6.19’da özet zincirleme ile ilgili bir örnek gösterilmektedir. Şekilde, çok hedefli

olarak iletilecek veri, toplam n adet mesaja bölünmüştür. İlk olarak birinci bloğun

özeti hesaplanmakta ve imzalanarak gönderilmektedir. Daha sonra özet zincirlemesi

uygulanmakta ve bu işlem son bloğa kadar devam etmektedir.

159

imza(özetB1) özetB2 Bilgi özetB3 Bilgi Bilgi

B1 B2 Bnİmza paketi

Şekil 6.19 – Özet zincirleme tekniği ve gönderilen paketler

Alıcı tarafta imza paketi alındığında ilk safhada imza kontrol edilmekte ve kaynak

kimlik doğrulaması yapılmaktadır. Kimlik doğrulamasından sonra ilk bloğun özeti

saklanmaktadır. İlk blok alıcıya ulaştığında, özeti hesaplanmakta ve saklanan özet ile

karşılaştırılmaktadır. Bu kontrolün başarıya ulaşması, bloğun içeriğinin

doğruluğunun yanında kaynak kimlik doğrulaması da sağlamaktadır. Takip eden

blokların özetleri bir önceki blok ile yollandığı için verinin doğruluğunun kontrolü

son bloğa kadar benzer şekilde yapılmaktadır. Veri doğrulama zinciri, imza

paketinde son bulduğu için gönderim reddedilememektedir. Özet zincirlemesi

tekniğinde sadece tek bir imza işlemi ve toplam n özet işlemi yapılmaktadır. Özet

çıkarma işlevlerinin imzalama işlevlerine göre 1000 kat daha kısa sürdüğü göz önüne

alındığında bu teknik sayesinde yüksek performans sağlanmaktadır. Performansın

yanı sıra, tüm iletim boyunca tek bir imza paketi ve tüm ilerim boyunca her blok tek

bir için özet bilgisi ek yük olarak iletilmektedir. Örneğin imza algoritması için RSA,

özet algoritması için SHA-1 kullanıldığında, 128 baytlık imza paketi ve her blok

başına 20 baytlık ek yük iletilmektedir. Basit özet zincirlemesi tekniği analiz

edildiğinde pek çok sorunu beraberinde getirdiği anlaşılmaktadır. İlk olarak,

iletilmek istenen bilginin tamamının iletime başlanmadan önce hazır olması

gerekmektedir. Veri doğrulaması, bloklar alıcı sistemlere sırasıyla ulaştığı takdirde

yapılabilmektedir. Sıranın bozulması sonucunda veri doğrulamasının

sürdürülebilmesi için uygun sıra sağlanana karda gelen bloklar ön bellekte

tutulmalıdır. Bu tür durumlarda verinin üst katmanlara iletimi veya talep eden

uygulamaya teslimi gecikmektedir. Buna ek olarak, özet zincirleme tekniği paket

kayıplarına karşı toleranslı değildir. Bloklar yollanırken herhangi bir bloğu alamayan

alıcı, o bloktan sonraki bloklar için veri doğrulaması yapamamaktadır.

Basit özet zincirleme tekniğinin paket kayıplarına karşı çok hassas olması ve

gönderimden önce bütün verinin bilinmesi zorunluluğunun önüne geçilebilmesi için

zincirlemenin ileriye doğru yapılması ve mesaj özetlerinin birden fazla mesaj,

içerisinde gönderilmesi gerekmektedir. Özet zincirlemesinin ileriye doğru yapılması

160

sayesinde kaynak verinin tamamı beklenmeden ivedi şekilde iletime

başlanabilmektedir. Bu teknikte, bilgi paketlerini imza paketi takip etmektedir. Alıcı

sistemlerde kimlik doğrulama işleminin yapılabilmesi için imza paketi

gerekmektedir. İmza paketi ileriye dönük zincirlemede, bilgi paketlerinden sonra

gönderildiği için doğrulama gecikmektedir. Kayıplı şebekelerde kayıplara karşı

tolerans sağlanabilmesi için, gönderilen paketlerdeki özet bilgisinin arttırılması

gerekmektedir. Özetler tek bir pakette değil, birden fazla pakette yollanmaktadır.

Böylece her bir paket; mesajın yanı sıra, diğer mesajlara ait olan pek çok özet

taşımaktadır. Bilgi paketlerinde gönderilen özet sayısının artmasına ek olarak imza

paketlerindeki özet sayısı da artmaktadır. Dolayısıyla paket kayıplarına karşı direncin

arttırılması, mesaj başına daha fazla ek yük yaratmaktadır. İleriye doğru zincirleme

ve paket içerisinde birden fazla özet yollama teknikleri Etkin Çok Zincirli Akım

İmzalama algoritmasında (Efficient Multichained Stream Signature, EMSS) [98]

kullanılmaktadır. EMSS tekniğinde ileriye dönük zincirleme kullanıldığı için kaynak

sistem, bilgi hazır olduğu anda iletime başlayabilmektedir. Bilginin akım şeklinde

iletildiği uygulamalarda, gönderimin reddedilebilmesi genellikle çok fazla önem

taşımamaktadır. Çoklu ortam uygulamaları bu tür uygulamalara örnek olarak

gösterilebilir. Çoklu ortam uygulamalarında iletilen bilgiler ivedi bir şekilde

tüketilmektedir. Fakat durum her uygulama için bu şekilde olmamaktadır. EMSS

sayesinde kaynak sistem, bilgileri gönderdiğini reddedememektedir. Gönderimin

reddedilememesi, geleneksel imzalama algoritmaları kullanılarak sağlanmaktadır

[98]. Bu tür algoritmaların işlem ve ek yükü çok fazla olduğundan, tek bir imza pek

çok paket üzerine paylaştırılmaktadır. Gönderimin reddedilememesinin sağlanması

için Pi paketiyle birlikte Pi-1 paketinin özeti olan h(Pi-1) gönderilmektedir. Akımın

sonunda son paketin özetini ve kaynak imzasını taşıyan imza paketi yollandığı

takdirde gönderimin reddedilememesi bütün paketler için sağlanmaktadır. Sağlamlık

değerinin yüksek tutulması için her bir paketin özeti pek çok paketle birlikte

gönderilmekte ve imza paketi pek çok paketin özetini taşımaktadır. Şekil 6.20’de her

paketin kendinden önceki iki paketin özetini taşıdığı durum gösterilmektedir. Şekilde

gösterilmekte olan zincirleme yapısında, imza paketi iki özet taşımaktadır.

Gönderimin reddedilememesi, imza paketlerinin periyodik olarak gönderilmesi

sayesinde sağlanmaktadır. Alıcı sistemlerde doğrulama, imza paketi beklendiği için

gecikme ile yapılmaktadır. EMSS’de özet zincirleri, çizgeler olarak ifade

edilmektedir [98].

161

Mi

h(Pi-1)

h(Pi-2)

Pi

Mi+1

h(Pi)

h(Pi-1)

Pi+1

Mi+2

h(Pi+1)

h(Pi)

Pi+2

h(Pi+1)

h(Pi+2)

İmza

paketi

İmza

Şekil 7.19 – EMSS zincirleme yapısı örneği

Paketler çizge içerisinde düğüm olarak, özet bağlantıları da kenar olarak

anılmaktadır. Bir kenarın uzunluğu ilgili paketlerin sırası i ve j olduğu zaman L(Eij)

= | i - j | olarak ifade edilmektedir. Pj, Pi’nin özetini taşıyorsa Pi düğümünden Pj

düğümüne bir kenar çizilmekte ve Pj paketi, Pi paketinin destekleyen paketi olarak

isimlendirilmektedir. İmza düğümleri S ile gösterilmekte ve Sl imza paketi, Pk

paketine ait özeti taşıdığı takdirde Pk düğümünden Sl düğümüne bir kenar

çizilmektedir. İletim sırasında bazı paketler iletilemediği için, alıcı tarafta alınmayan

paketlere ait düğümler çizgeden çıkarılmaktadır. Sadece alıcıya ulaşan paketlere göre

çizilen çizge içerisinde Pi paketi sadece, Pi düğümünden herhangi bir imza düğümüne

doğru bir yol mevcut olduğu durumlarda doğrulanabilmektedir. Yapılan analizde,

düğüm başına kenar sayısı, kenarların uzunluğu ve dağılımı, düğümlerin frekansı ve

tek bir imza düğümüne giren kenarların sayısının önemli tasarım parametreleri

olduğu anlaşılmaktadır. Bu parametrelerin seçimi işlem ve iletişim ek yükünü,

doğrulama gecikmesini ve paket kayıplarına karşı sağlamlığı direk olarak

etkilemektedir. Genel olarak bütün tasarımlarda amaç minimum ek yük ile paket

kayıplarına karşı maksimum sağlamlık ve alıcı tarafta doğrulama için minimum

gecikmedir. Optimum parametrelerin bulunması için pek çok benzetim

gerçekleştirilmiştir [98]. Benzetimlere bulunan sonuçlara göre derecesi altıdan büyük

olan birleşimlerin %99’unda doğrulama olasılığı %90’ın üzerindedir. Yapılan

benzetimlerde 1-2-3-4-5-6 zincirlemesinin en kötü sonuçları verdiği, üstel olarak

artan 1-2-4-8-16-32 zincirlemesinin başarımının zayıf olduğu ve optimum

çözümlerden birinin 5-11-17-24-36-39 olduğu bulunmuştur [98]. Sadece bu üç zincir

tipi için imza paketinin uzaklığının doğrulama olasılığına etkisi şekil 6.21’de

gösterilmektedir.

162

Do

ğru

lam

a o

lasılığ

ı

İmza paketinin uzaklığı

En üst eğri 5-11-17-24-36-39

Orta eğri 1-2-4-8-16-32

Alt eğri 1-2-3-4-5-6

Şekil 6.21 – EMSS benzetim sonuçları

EMSS algoritmasında, statik zincirlemenin yanı sıra dinamik zincirleme de

kullanılabilmektedir. Bilgi paketlerinin imza paketlerine uzaklığının artmasıyla

birlikte rastlantısal zincirlemedeki doğrulama olasılığının statik zincirlemeye oranla

daha yüksek olduğu, yapılan benzetimler sonucu ortaya çıkarılmıştır [98].

Paket kayıplarının olduğu ortamlarda çok hedefli iletimin güvenli olarak

yapılabilmesi için geliştirilen bir başka yol ise zincirin değiştirilerek uzatılmış

(augmented) yeni bir zincir elde edilmesidir. Uzatılmış zincirler [99] sayesinde,

kısmi olarak saklanan veri iletilebilmekte ve aynı zamanda paket kayıplarına karşı

doğrulama olasılığı arttırılmaktadır. Uzatılmış zincir algoritması, temel zincir

düzeninin üzerine inşa edilmektedir. Temel zincir düzeninde, Pi paketinin özeti Pi+1

ve Pi+a paketlerine yerleştirilmektedir. Burada a değişkeni, tasarımdan tasarıma göre

değişen bir sabittir. Internet üzerinde gerçekleşen paket kayıplarının öbekler halinde

olduğu düşünüldüğünde [100], uzatılmış zincirleme tekniği sayesinde birbirini takip

eden a-1 paket kaybına karşı direnç gösterebilmektedir. Her bir paket iki özet

taşımaktadır ve zincir içerisindeki son paket (Pn) imzalanmaktadır. Böyle bir yapıda,

kaynak tarafında sadece a adet özetin tutulması için bir önbellek gerekmektedir. Alıcı

sistemler, doğrulamaya çalıştığı paket ile ilgili imza paketi gelmeden doğrulama

işlemini gerçekleştirememektedir. Bu sebepten dolayı alıcı tarafta n adet paketin

önbellekte tutulması gerekmektedir. Uzatılmış zincir algoritmasında bu yapı içerisine

toplam p-1 adet ek düğüm eklenmektedir. Şekil 6.22’de a = 3 ve p = 2

parametreleriyle verilen bir uzatılmış zincir gösterilmektedir. Eklenen her yeni

düğüm, diğer düğümler gibi veri paketlerini temsil etmektedir ve var olan

163

düğümlerin arasına yerleştirilmektedir. Şekil 6.22’de gösterilmekte olan uzatılmış

zincir yapısına, A düğümleri yeni eklenen düğümleri, oklar ise taşınan özetleri

göstermektedir. Şöyle ki, B1’den çıkıp B2’ye giren ok B1’in özetinin B2 ile birlikte

iletildiğini göstermektedir. Uzatılmış zincir algoritmasında hem ileriye doğru hem de

geriye doğru zincirleme yapılmaktadır. Dolayısıyla birbirini takip eden p(a-1) adet

paket kaybına karşı direnç sağlanmaktadır. Temel zincirlemenin aksine, kaynak

tarafında p adet paketin ve (a + p – 1) adet özetin önbellekte tutulması

gerekmektedir.

Temel zincir, a = 3

B1 B2 B3 B4

B5 B6 B7

Uzatılmış zincir, a = 3, p=2

B1 B2 B3 B4

B5 B6

A1 A2 A3

Şekil 6.22 – Uzatılmış zincir algoritması örneği (a=3, p=2)

Bu gereksininler dolayısıyla alıcı sistemlerde ise imza paketi dolayısıyla n adet

paketin önbellekte tutulması gerekmektedir. p parametresinin dinamik olarak

değiştirildiği tasarımlar da mevcuttur [99]. Uzatılmış zincirleme üzerinde yapılan

analiz sonucu, bu tekniğin verinin hemen iletilmesi gereken gerçek zamanlı

uygulamalarda kullanılamayacağı görülmektedir. Buna ek olarak, alıcı sistemlerde

doğrulamanın gecikme ile yapılıyor olması önbellekleme saldırılarına açık kapı

bırakmaktadır.

Çok hedefli olarak iletilen veri, kimi zamanlarda öncelik sınıflarına

ayrılabilmektedir. MPEG-2 [101] akımları, bu tür verilere örnektir. MPEG-2 akımı

içerisinde bulunan bir takım B ve P çerçeveleri, ilişkili I çerçeveleri olmadan

görüntülenememektedir. Dolayısıyla iletimde I çerçevelerinin önemi yüksektir.

Bunun gibi pek çok örnek vermek mümkündür. Değişken önem derecesine sahip

paketler bulunduran akımların çok hedefli iletimi için sırtında taşıma (piggybacking)

tekniği [102] kullanılmaktadır. Bu teknikte kaynak sistemde özet zincirinin

164

hazırlanabilmesi için iletilmek istenen bütün verinin önceden hazır olması

gerekmektedir. İlk olarak verinin tamamı öncelik sınıflarına ayrılmaktadır. En

yüksek önceliğe sahip sınıf S0 olarak ifade edilmektedir. Verinin ilk paketi ve en

yüksek önceliğe sahip paketler bu gruba konmaktadır. S0 sınıfına dahil olan

paketlerin doğrulanması için alt sınıflardaki paketlerin alımına ihtiyaç

duyulmaktadır. Buna ek olarak önceliği en yüksek sınıfın paket kaybına olan

toleransı en yüksek olmaktadır. Böylece veri içerisindeki belirli paketler (S0) için

ortalamanın üzerinde öbeklenmiş kayıp toleransı, diğer paketler için ortalamanın

altında öbeklenmiş kayıp toleransı sağlanmaktadır [102]. Üst üste bindirme

tekniğinde veri akımının tamamı, toplam n adet pakete bölünmektedir. Bu paketler,

toplam r adet eşit büyüklükteki öncelik sınıfına dağıtılmaktadır. Her bir sınıfın

büyüklüğü z = n / r olmaktadır. Öncelik sınıflarına ayrılmış paketler Si,j olarak

gösterilmekte ve ilk indeks öncelik sınıfını, diğer indeks ise o paketin sınıf

içerisindeki yerini göstermektedir. Önceliği en yüksek sınıf olan S0 içerisindeki

paketler, akım içerisinde birbirleri arasına r düğüm kadar mesafede konarak

yerleştirilmektedir. Ayrıca her bir öncelik sınıfı için ayrı ayrı maksimum öbeklenme

değerleri bulunmaktadır. Bu değerler bi ile ifade edilmekte ve her bir sınıfın arda

arda kaç paket kaybına toleranslı olacağını göstermektedir. Dolayısıyla b0 = maks(bi)

olmak üzere toplam b0, b1, …, br-1 adet öbeklenme parametresi olmakta ve bi = ki x r

eşitliği sağlanmaktadır. Diğer sınıfların yerleştirilmesi ile ilgili herhangi bir kısıt

bulunmamaktadır. Daha sonra bu sınıfların öncelikleri göz önünde bulundurularak

bir çizge oluşturulmaktadır. a düğümünden başlayarak b düğümüne doğru giden bir

ok e(a, b) olarak gösterilmektedir. a ile b düğümleri arasındaki bu ilişki, b’nin içeriği

ve kaynağı doğrulandıktan sonra a’nın da içerik ve kaynak doğrulamasının

yapılabileceği anlamına gelmektedir. Bir başka deyişle b paketi, a paketinin özetini

taşımaktadır. Çizge aşağıdaki şekilde oluşturulmaktadır.

1. Yüksek önceliğe sahip paketlerin eklenmesi;

1.1. i = 0 ve j = 1 iken; si,j’den hiçbir kenar çıkmamaktadır. (Bu düğüm

başlangıç düğümüdür.)

1.2. i = 0 ve j = 2, 3, …, k0 + 1 iken; e(s0,j, s0,1) kenarları çizgeye

eklenmektedir. (Başlangıca yakım düğümler.)

1.3. i = 0 ve j = k0 + 2, k0 + 3, …, z iken; e(si,j, si,j-1) ve e(si,j, si,j-1-k0)

kenarları çizgeye eklenmektedir.

165

2. Diğer düğümlerin eklenmesi;

2.1. i = 1, 2, … r-1 ve j = 1, 2, …, ki iken; e(si,j, s0,j) kenarı çizgeye

eklenmektedir. (Başlangıca yakın düğümler.)

2.2. i = 1, 2, …, r-1 ve j = ki+1, ki+2, …, z iken; e(si,j, s0,j) ve e(si,j, s0,j-ki)

kenarları çizgeye eklenmektedir.

Çizge oluşturulurken, öncelik seviyesi en yüksek gruptan çıkan kenarlarla

başlanmaktadır. Önceliği en yüksek olan sınıf için kayıp toleransı k0 x r’dir. S0,1, veri

içerisindeki ilk pakettir ve sayısal imzayı da taşımaktadır. Sırtında taşıma tekniğinde

r = 2 olan durum için paketlerin birbiri arasındaki ilişkisi şekil 6.23’te

gösterilmektedir. Bu teknik sayesinde düşük önceliğe sahip paketler, S0 sınıfına dahil

olan düğümlerin arasındaki kenarlardan oluşturulmuş sağlamlık derecesi yüksek yapı

üzerine bindirilmektedir [103]. Böylece S0 sınıfına dahil olmayan paketlerin

kaybolmasına yol açan öbeklenmiş bir kayıp, kaybolan paketler dışındaki diğer

paketlerin doğrulanmasını etkilememektedir. Fakat öncelikli paketlerin kaybolması

diğer paketlerin doğrulanmasını etkilemektedir. Öncelikli paketlerin iletim sırasında

kaybolmasının en alt seviyeye indirilmesi için bu gruba ait paketler, birbiri arasına

mesafe konarak akım içerisine yerleştirilmektedir.

Pm Pm+1

s0,i s1,j

Pm+2

s0,i+1

Pm+2k0

s0,i+k0

Pm+2k0+1

s1,j+m

Pm+2(k0+1)

s0,i+k0+1

...

...

Şekil 6.23 – Üst üste bindirme tekniği, r = 2

Çok hedefli iletimde birinci problem alanı içerisindeki sorunların üstesinden

gelebilmek için özet zincirlemesi kullanan teknikleri özetlemek gerekirse; güvenilir

olmayan akımın doğrulanabilmesi için her bir paket içerisinde birden fazla mesajın

özeti gönderilmektedir. Doğrulama olasılığının yüksek tutulması için her bir imza

paketinde birden fazla özet bulunmaktadır ve imza paketlerinin iletimine yüksek

önem verilmektedir. EMSS [98] ve uzatılmış zincirleme [99] tekniklerinde imza

paketleri iletimin sonunda gönderilmekte olduğu için alıcı sistemlerde doğrulama

gecikme ile yapılmaktadır. Doğrulamanın gecikme ile yapılması alıcı sistemlerde

önbellek kullanımını da beraberinde getirmektedir. Alıcı tarafında önbellek

kullanımı, DoS (hizmet durdurma) saldırılarına olanak tanımaktadır. Bunun nedeni

166

alıcı sistemlerin, aldığı paketleri anında doğrulayamadığı için, gelen bütün paketleri

kabul edip biriktirmesidir. İmza paketlerinin akımın başında iletilmesi, alıcı

sistemlerde doğrulamanın ivedi şekilde yapılabilmesine sebep olmaktadır. Fakat

böyle bir yapıda kaynak, veriyi anında iletememekte ve verinin kısmen veya

tamamen hazır olması gerekmektedir. Fakat imzanın sonda olduğu durumlarda

iletime hemen başlanabilmektedir. Doğrulama mekanizmalarında kullanılan paketler

arasında oluşturulan ilişkiler, doğru iletilen bir paketin kayıp olan başka bir paket

sayesinde doğrulanamayarak atılmasına sebep olabilmektedir. İmza paketinin nasıl

oluşturulduğu birden fazla özet zincirini bir arada kullanan algoritmalar için hayati

önem taşımaktadır. Bir imza paketinde bulunan özet sayısı, imza paketlerinin iletim

sağlamlığı birkaç önemli parametredir.

Yukarıda yapılan analize ek olarak alıcı ve kaynak tarafındaki doğrulama

gecikmeleri kullanılan tekniklerin doğası gereği engellenememektedir. Çok hedefli

iletim uygulamasının yapısına göre hangi taraftan feragat edilmesi gerektiği

seçilmelidir.

6.2.2.2. Mesaj Doğrulama Kodları (MAC) Temelli Veri DönüĢümleri

Birinci problem alanı olan veri dönüşümleri alanında güvenliğin sağlanması için

kullanılan bir diğer yol mesaj doğrulama kodlarıdır (Message Authentication Codes,

MAC). MAC temelli doğrulama için tek yollu zincirler, ilk olarak bağlantı durumu

yönlendirme protokollerinde güvenliğin sağlanması amacıyla kullanılmıştır [97].

Çok hedefli iletim söz konusu olduğunda, MAC temelli doğrulama tekniği TESLA

algoritmasında kullanılmaktadır. TESLA algoritması (Timed Efficient Stream Loss

Tolerant Authentication, TESLA) [98], zamanlanmış, verimli ve iletim kanalı

kayıplarına karşı toleranslı doğrulama sağlamaktadır. TESLA sayesinde, kayıplara

karşı sağlamlık arttırılmakta ve yüksek ölçeklenebilirlik elde edilmektedir. TESLA

algoritmasında, yarı rastlantısal işlevler (Pseudo Random Function, PRF) ve mesaj

doğrulama kodlarından yararlanılmaktadır. Algoritmada şifreleme anahtarları belirli

bir süre gecikme ile bildirilmektedir. İlk olarak, rastlantısal bir k anahtarı

üretilmektedir. Kaynak bu anahtara olan bağlılığını (commitment), PRF kullanarak

alıcılara iletmektedir. MAC bilgisi bir sonraki paket olan Pi içerisinde

yollanmaktadır. MAC bilgisinin üretiminde k anahtarı kullanılmaktadır. Bir sonraki

pakette (Pi+1), k anahtarı açık haliyle iletilmektedir. Böylece alıcı sistemler Pi+1

167

paketini aldığında k anahtarına olan bağlılığı ve Pi paketinin MAC bilgisini

doğrulayabilmektedir. Güvenliğin sağlanabilmesi için Pi paketinin, Pi+1 paketi

gönderilmeden alınmış olması gerekmektedir. Alıcı sistemler, bu koşulun

sağlandığından emin olduktan sonra Pi paketini tamamen doğrulamış olmaktadır.

TESLA algoritmasının başında kaynak ilk bağlılığı imzalamaktadır. İlerleyen

paketler zincirleme ile doğrulanmaktadır.

TESLA algoritması, ilk olarak temel tasarım olarak oluşturulmuş, daha sonra üzerine

eklemeler yapılarak son halini almıştır. Temel algoritmanın kullanılmaya

başlanmasından önce zaman eşlemesi yapılması zorunludur. Temel yapıda kaynak

ilk olarak sadece kendisinin bildiği bir anahtara olan bağlılığını imzalayarak alıcı

sistemler ile paylaşmaktadır. Bu bağlılık, F(Ki) olarak ifade edilmekte ve

hesaplanması PRF ile gerçekleştirilmektedir. Daha sonra kaynak, Ki anahtarını

kullanarak Pi paketine ilişkin MAC bilgisini hesaplamaktadır. Ki anahtarı, Pi+1

paketinde alıcılara açık olarak iletilmektedir. Alıcı sistemler Ki anahtarına olan

bağlılığı (F(Ki)) ve Pi paketine ilişkin MAC’i doğrulamaktadır. Her iki doğrulama da

başarıyla sonuçlandığı takdirde, Pi paketinin gerçekten o kaynaktan geldiği ve yol

üzerinde değişmediği kararına varılmaktadır. Anahtara olan bağımlılık PRF

kullanılarak üretildiği için bu bağımlılıktan anahtarın bulunması işlemsel olarak

imkansızdır [39]. İlgili paket yapısı şekil 6.24’te verilmektedir.

Mi-1

F(Ki)

Ki-2

Di-1

MAC(K‟i-1, Di-1)

Mi

F(Ki+1)

Ki-1

Di

MAC(K‟i, Di)

Mi+1

F(Ki+2)

Ki

Di+1

MAC(K‟i+1, Di+1)

Pi-1 Pi Pi+1

Doğrulanmış Pi+1„den sonra doğrulanacak Henüz doğrulanmamış

Şekil 6.24 – Temel TESLA yapısındaki paketler

Şekilde gösterilmekte olan paketler içerisindeki Mi, mesajı, K’i = F’(Ki) bir sonraki

paketin MAC bilgisinin hesaplanması için kullanılan anahtarı, F(Ki) ise Ki anahtarına

olan bağlılığı göstermektedir. F ve F’ işlevleri iki farklı PRF’tir. Ki anahtarına olan

bağımlılık F(Ki), bir sonraki paket olan Pi paketinin doğrulanmasında önem

taşımaktadır. Önyüklemenin gerçekleştirilebilmesi için ilk paketin imzalanması

gerekmektedir. Mi bilgisinin gönderilebilmesi için ilk olarak yeni bir anahtar (Ki+1)

168

seçilmekte ve Pi = (Di, MAC(K’i, Di)) mesajı oluşturulmaktadır. Mesaj içerisindeki

Di = (Mi, F(Ki+1), Ki-1) anlamına gelmektedir. MAC(K’i, Di) ise Di’nin K’i anahtarı

altında üretilen mesaj doğrulama kodudur. Pi mesajı alıcı sisteme ulaştığında alıcı

sistem Ki anahtarını bilmediği için K’i anahtarını hesaplayamamakta ve dolayısıyla

alınan paketin MAC bilgisini hesaplayamadığı için paketi doğrulayamamaktadır. Ki

anahtarı, alıcıya Pi+1 paketinde ulaşmaktadır. Alıcı sistem ilk olarak bu anahtara olan

bağımlılığı hesaplamakta ve Pi-1 paketiyle gönderilen F(Ki) ile karşılaştırmaktadır.

Daha sonra K’i = F’(Ki) hesaplanarak Pi paketinin doğrulaması yapılmaktadır. Pi

paketinin doğrulanmasıyla birlikte F(Ki+1) bağlılığı da doğrulanmaktadır. Doğrulama

adımları Pi+2 alındıktan sonra Pi+1 için tekrarlanmaktadır. Bu yapıda, alıcı sistemlerin

Pi paketini almasından önce Pi+1 paketinin kötü niyetli kişiler tarafından alınması,

güvenlik açıklarına neden olmaktadır. Bu şekilde Pi paketine ait MAC bilgisinin

hesaplanması için kullanılan Ki anahtarı kötü niyetli kişilerin eline geçmekte ve Pi

içerisinde yollanan bağlılık değiştirilerek Pi’den sonraki paketler üzerinde hileli

değişiklikler yapılabilmektedir. Bunun önlenebilmesi için algoritma içerisinde bir

“güvenlik koşulu” tanımlanmaktadır [98]. Bu koşula göre, alıcı taraf Pi paketini

aldığında, kendi zamanı ve t süresini göz önünde bulundurarak, Pi paketi ile ilgili

anahtarları içeren Pj paketinin henüz kaynak tarafından gönderilmediğini doğrulamak

zorundadır. Bu koşul sağlandığı takdirde Pi paketinin güvenli bir şekilde iletildiği

doğrulanmaktadır.

TESLA algoritmasında paket kayıplarına karşı toleransın arttırılması için Ki

anahtarlarının rastlantısal olarak seçilmesi yerine anahtar zincirleri kullanılmaktadır.

Zincir içerisindeki anahtarlar, Fv(x) = F

v-1(F(x)) ilişkisi kullanılarak

hesaplanmaktadır. Aynı ilişki v = 0 için F0(x) = x şeklinde yazılmaktadır. Zincirin

oluşturulabilmesi için, kaynak ilk olarak rastlantısal bir Kn anahtarı üretmekte ve bu

anahtarı kullanarak biraz önce tanımlanan PRF yarımıyla n adet anahtar

hesaplamaktadır. K0 anahtarı Fn(Kn) olarak, zincir içerisindeki herhangi bir anahtar

ise Ki = Fn-i

(Kn) olarak hesaplanmaktadır. Anahtar üretimi için böyle bir zincir

kullanıldığında, yarı rastlantısal işlevlerin özelliklerinden dolayı Ki verildiğinde F

işlevi tersine döndürülememekte ve dolayısıyla j > i için Kj hesaplanamamaktadır.

169

Mi-1

Ki-2Di-1

MAC(K‟i-1, Di-1)

Pi-1

K‟i-1

Mi

Ki-1Di

MAC(K‟i, Di)

Pi

K‟i

Mi+1

KiDi+1

MAC(K‟i+1, Di+1)

Pi+1

K‟i+1

Ki+1KiKi-1

F‟F‟F‟

F F

DoğrulanmışPi+1„den sonra

doğrulanacak

Henüz

doğrulanmamış

Şekil 6.25 – TESLA algoritmasında anahtar zincirleri kullanımı

Alıcı sistemler Ki anahtarını aldıklarında j < i eşitsizliğini sağlayan bütün Kj

anahtarlarını hesaplayabilmekte ve dolayısıyla Pi paketinin doğrulanması için Pi’den

sonra gelen herhangi bir paket yeterli olmaktadır. Şekil 6.25’te zincir yapısı

gösterilmektedir. Yarı rastlantısal işlevler ters çevrilemedikleri için, zincir

içerisindeki herhangi bir bağlılık zincirin tamamına olan bağlılığı doğrulamaktadır

[98]. Bu nedenden dolayı anahtar bağımlılıklarının (F(Ki)), ilk paket haricinde diğer

paketler içerisinde yollanmasına gerek duyulmamaktadır. Özetle, paket kayıplarına

karşı tolerans tek yollu anahtar zincirleri kullanılarak arttırılmaktadır.

TESLA algoritmasında en önemli noktalardan biri “güvenlik koşulu”’nun

sağlanmasıdır. Bunun için alıcı sistemlerin Pi paketinin aldıklarında kaynağın Pi+1

paketini yollamamış olduğundan emin olmaları gerekmektedir. Bunun sağlanması

için en kolay yol, kaynağın iletim hızının alıcı sistemler tarafından bilinmesidir.

Fakat bu koşul, kaynağın iletim hızını sınırlandırmaktadır. Güvenlik koşulunun

kaynağın iletim hızına bağımlı olmaması için Pi paketi ile ilgili Ki anahtarı Pi

paketini takip eden bir sonraki paket ile iletilmemekte, bunun yerine Pi+d paketinde

iletilmektedir. Burada d gecikme parametresi olarak isimlendirilmektedir. Gecikme

parametresi kaynak tarafından belirlenmekte ve grup oluşturulurken alıcılarla

paylaşılmaktadır. Yapılan analiz sonucunda bu parametrenin yüksek seçilmesinin

alıcı sistemlerde paketlerin geç doğrulanmasına, düşük seçilmesinin ise güvenlik

koşulu dolayısıyla bazı paketlerin atılmasına sebep olduğu görülmektedir. Bir başka

deyişle, bu parametrenin seçimi güvenliği etkilememekte, tasarımın

kullanılabilirliğini etkilemektedir.

170

Gecikme parametresinin kullanımı yanında kaynak tarafında dinamik iletim

hızlarının desteklenebilmesi için artan paket indeksleri yerine zaman aralıklarına

göre anahtar değişimi uygulanmaktadır [98]. Böylelikle alıcıların paketlerin ne

zaman gönderileceğini tam olarak bilmeleri gerekliliği ortadan kalmaktadır. Aynı i

zaman aralığında kaynak sadece tek bir anahtar (Ki) kullanmakta ve MAC bilgilerini

Ki yardımı ile hesaplamaktadır. i zaman aralığı içerisinde gönderilen bütün paketler

Ki-d anahtarını ifşa etmektedir. Grubun kurulması sırasında kaynak; iletimin ilk

olarak başlayacağı zaman olan T0 değerini, her bir zaman aralığının ne kadar

süreceğini belirten T değerleri ve d parametresini bütün grup üyeleriyle

paylaşmaktadır. Bu değerler imzalanarak gönderilmektedir. Her hangi bir t

zamanında aralık indeksi i = (t – T0) / T ifadesi yardımıyla hesaplanmaktadır.

Her bir i zaman aralığıyla bir Ki anahtarı ilişkilendirilmiştir ve bu anahtarlar daha

önce açıklanmış olan zincir yapısındadır. Anahtar ifşa etme periyodunun çok önemli

bir tasarım parametresi olduğu görülmektedir. Zaman farkının düşük seçildiği

durumlarda paketler hızlıca doğrulanmakta fakat yavaş bir şebekede iletim süreleri

yüksek olacağından güvenlik koşulu sağlanmamakta ve paketler atılmaktadır. Zaman

farkının yüksek seçildiği durumlarda, yüksek gecikmeye sahip olan şebekeler

içerisindeki alıcılar, çok hedefli iletimi, paketleri atmadan alabilecek fakat kaynağın

yakınındaki sistemlerde şebeke erişimi hızlı olduğu için önbellek sorunları

yaşanacaktır. Bütün alıcıların isteklerinin yerine getirilebilmesi için anahtar ifşa

periyotları birbirinden farklı birden fazla doğrulama zinciri kullanılması

gerekmektedir. Böylelikle alıcı sistemlerin çok hedefli iletimi, kendileri için en

uygun olan zinciri seçerek alması mümkün olmaktadır.

TESLA algoritmasında sayısal imza kullanım yükü birden fazla paket üzerine

paylaştırılmaktadır. Kaynak tarafında her bir paket için tek bir MAC operasyonu

yapılmakta ve MAC ile birlikte zincir içerisinden bir anahtar gönderilmektedir.

Güncel zaman aralığının indeksinin gönderilmesi isteğe bağlıdır. Alıcı tarafta bir

paketin doğrulanması için sadece tek bir MAC operasyonuna ihtiyaç duyulmaktadır.

Güvenlik koşulu için yapılması gereken işlemler gözle görülür bir ek yük

getirmemekte fakat parametre seçimlerine göre bazı paketlerin atılmasına sebep

olabilmektedir. Buna ek olarak zaman eşlemesinin gerçekleştirilmesi çoğu zaman

çok karmaşık olmakta ve her uygulamada sağlanamamaktadır. Ayrıca doğrulamanın

yapılabilmesi için alıcı tarafta önbellekleme yapılması zorunludur. Kaynağın iletim

171

hızına ve d parametresinin seçimine bağlı olarak saklanması gereken paketlerin

sayısı çok fazla olabilmektedir. Bazı durumlarda bellek taşmaları yaşanabilmektedir.

6.2.3. Bilgi Korsanlığı

Sadece tek bir sistem tarafından bilinen bir bilgi, herhangi bir şekilde üçüncü

taraflarca öğrenildiğinde, bilgiyi sızdıran sistemin hangisi olduğu açıktır. Fakat aynı

bilgiye birden fazla sistemin erişimi olduğu durumlarda bilginin hangi sistem

tarafından üçüncü taraflara verildiğinin saptanması karmaşık bir problem haline

gelmektedir. Çok hedefli iletimde, erişim hakkı olmayan sistemlerin iletilen içeriğe

erişememesi için erişim hakkı olan sistemlere belirli anahtarlar dağıtılmakta ve

kaynak tarafında veri gönderilmeden önce sadece bu anahtarlar tarafından deşifre

edilebilmesi için şifrelenmektedir. Böyle bir tasarım, bilginin grup dışına çıkmaması

için her zaman yeterli olmamaktadır. Bunun nedeni, iletişimin güvenli hale

getirilmesi için grup üyelerine güvenilmesi ve deşifre için anahtarların dağıtılmasıdır.

Bilgi korsanlığı, gruba dahil olan resmi üyelerin, gruba iletilen bilgiyi edinme hakkı

olmayan sistemlere yardım ederek bilgileri bu sistemlerle paylaşması anlamına

gelmektedir [63]. Bilgi korsanlığının en çok yaşandığı uygulama türü televizyon

yayıncılığıdır. Bilgi korsanlığının engellenmesi iki farklı safhadan oluşmaktadır. İlk

safha, bilgi kaçıran grup üyesinin veya üyelerinin izlenmesidir. Bu şekilde davranan

grup üyelerine hain (traitor) denmektedir [63, 103]. İkinci safha ise bu tür sistemlerin

operasyonlarının durdurulmasına yöneliktir. Bilgi korsanlığının engellenebilmesi için

ilk olarak korsanlığın ortaya çıkarılması gerekmektedir. Korsanlığın kaynağı (veya

kaynakları) bulunduktan sonra bilgiyi deşifre etmesi engellenmekte ve sistem, grup

üyeliğinden çıkarılmaktadır. Bilgi korsanlığı anahtar dağıtımı ve bilgi dağıtımı olmak

üzere iki farklı şekilde yapılabilmektedir. Anahtar dağıtımında hain sistemler

kendilerine dağıtılan ve grup trafiğini deşifre etmek için kullanılan anahtarları

üçüncü parti sistemlerle paylaşmaktadır. Böylece üçüncü parti sistemler grup

trafiğini kendilerine çekip deşifre edebilmektedir. İkinci yöntem ise deşifre işleminin

hain sistemlerde yapılması ve açık bilginin üçüncü taraflarla paylaşılmasıdır. Üçüncü

tarafların sayısının çok olması durumunda, bilgi dağıtımı korsanlığının yapılması

zorlaşmakta ve ortaya çıkarılması aynı oranda kolaylaşmaktadır. Genel olarak

anahtar dağıtımı metodu tercih edilmektedir [63]. Bilgi korsanlığını engellenebilmesi

için başvurulan yollardan biri deşifre için kullanılacak anahtarların akıllı kartlar

172

içerisinde dağıtılmasıdır. Gruba üye olan kişiler bu kartları bilgisayarlarına takmakta

ve deşifre işlemi sadece ve sadece akıllı kartlar bilgisayara takılı iken

gerçekleşebilmektedir. Yapılan analizler sonucunda anahtarların ve diğer önemli

bilgilerin akıllı kartlar içerisinden elde edilmesinin zor olduğu fakat imkansız

olmadığı anlaşılmıştır. Günümüzde bilgilerin akıllı kartlardan çalınması çok daha

kolay hale gelmiştir [104].

Gruba dahil olan üyelerin hangisinin veya hangilerinin hainlik yaptığının bulunması

için iletilen verinin herhangi bir şekilde üyelere göre ayırt edilebilir olması

gerekmektedir. Böyle bir tasarım, bilgi gizleme teknikleriyle sağlanabilmektedir. Pek

çok bilgi gizleme tekniği bulunmaktadır. Bilgi gizleme teknikleri şekil 6.26’da

gösterilmektedir [105]. Çok hedefli iletim sistemlerinde, çoğu uygulamada telif hakkı

işaretleri kullanılmaktadır. Telif hakkı işaretleri iki alt gruba ayrılmaktadır. “Kırılgan

telif hakları işaretleri” bölümünde bulunan teknikler, çeşitli veri dönüşümleri

sonrasında kaybolmaktadır. Örneğin bir resim dosyasının en önemsiz veri bitleri

kullanılarak oluşturulmuş bir işaret, dosyanın herhangi bir sıkıştırma algoritmasından

geçirilmesi sonrasında kaybolmaktadır. Bunun nedeni en önemsiz bitlerin sıkıştırma

sırasında feda edilmesidir. Bu nedenden ötürü çok hedefli iletim uygulamaları gibi

pek çok uygulamada bu tür teknikler kullanılmamaktadır. “Sağlam telif hakkı

işaretleri” ,sıkıştırma algoritmaları gibi veri dönüşümlerinden etkilenmemektedir ve

iki alt gruba ayrılmaktadır. İlk grup iletilen trafik içerisinde parmak izi

tanımlanmasına yönelik teknikleri içermektedir. Parmak izi kullanımı, basit olarak

her bir kopya içerisinde eşsiz bir seri numarası gizlenmesi olarak tanımlanmaktadır

[105]. Böylece bilgi korsanlığı ortaya çıkarıldıktan sonra hangi grup üyesinin veya

üyelerinin korsanlığa dahil olduğunun bulunması mümkün olmaktadır. Sağlam telif

hakkı işaretlerinin ikinci alt grubu gizlenmiş kodlardır (watermarking). Gizlenmiş

kod tekniğinde iletilen bilgi içerisine telif hakkı bilgileri eklenmektedir. Bu bilgiler,

içerik sahibinin resmi adı, logosu veya yasal bilgiler olabilir. Gizlenmiş kod tekniği

ile parmak izi tekniğini birbirinden ayıran en önemli özellik parmak izinde gizlenen

bilgiler o bilgiyi tüketen varlıklara göre çeşitlilik göstermektedir. Gizlenmiş kod

tekniğinde böyle bir özellik bulunmamakta ve bilgiyi tüketen bütün varlıklara aynı

gizli bilgiler iletilmektedir. Dolayısıyla gizlenmiş kod teknikleri sadece bilgi

korsanlığını ortaya çıkarmakta, parmak izi teknikleri ise korsanlığın hangi grup üyesi

(veya üyeleri) tarafından yapıldığını belirlemektedir.

173

Bilgi Gizleme

Gizli Kanallar Stenografi Anonim Teknikler Telif Hakkı İşaretleri

Dilbilimsel

Stenografi

Teknik

Stenografi

Sağlam Telif

Hakkı İşaretleri

Kırılgan Telif

Hakkı İşaretleri

Parmak İzi

Tanımlaması

Gizlenmiş

Kodlar

Sezilemeyen

Gizlenmiş Kod

Görünür

Gizlenmiş Kod

Şekil 6.26 – Bilgi gizleme teknikleri

Bilgi korsanlığına dahil olan grup üyelerinin yakalanması için kullanılan en yaygın

yöntem, her bir üyeye farklı bir anahtarın verilmesidir. Bu anahtarlara bireysel

anahtarlar denmektedir. Çok hedefli olarak iletilecek bilgi genel bir anahtarla

şifrelenmekte, daha sonra bu genel anahtar bireysel anahtarlar kullanılarak deşifre

edilebilecek şekilde şifrelenmektedir. Böyle bir tasarımın en büyük dezavantajı her

bir kullanıcı için ek yükün artmasıdır. Bilgi korsanlarının k adet bireysel anahtarı

ellerinde bulundurması durumunda dahi güvenliğin sekteye uğramadığı pek çok

algoritma oluşturulmuştur [103,106]. Grup üyeleri tarafından içeriğin dağıtımının

ortaya çıkarılabilmesi için gizlenmiş kod teknikleri kullanılmaktadır. Bu izler ister

sezilemeyen, ister görünür tarzda olsun bilgiden çıkarıldıklarında bilgi zarar

görmektedir. Gizlenmiş kod tekniğinin kullanıldığı pek çok tasarım bulunmaktadır

[105,107-109]. Bilgi korsanlığının önlenmesinde etkili olan bir diğer faktör ise grup

üyelerinin cesaretinin kırılmasıdır. Her bir üyeye iletilen trafikte veya bu trafiği

deşifre etmesi için gönderilen anahtarlarda gizlenen özel bilgiler sayesinde

korsanlığa karışan üyeler kolayca yakalanmaktadır. Grup haberleşmesinin böyle bir

altyapı kullanılarak yapıldığını bilen grup üyelerinin korsanlığa teşebbüs etmesinin

olasılığının düşük olduğu kabul edilmektedir. Bunun nedeni korsanlık yapan üyelerin

kimliğinin ortaya çıkıp bu üyelerin yasal yaptırımlarla karşı karşıya kalacak

olmasıdır. Böyle bir ortamda, çoğu grup üyesi korsalığa teşebbüs etmemektedir.

174

6.2.4. Çok Hedefli Ġletimde Güvenlik Politikalarının Kullanımı

Çok hedefli iletimde kullanılmakta olan güvenlik algoritmaları, protokolleri ve

mimarileri çok hedefli iletimin doğası gereği güvenliği tam olarak

sağlayamamaktadır. Bir başka deyişle, çok hedefli iletimin güvenli hale getirilmesi

adına yapılan çalışmaların neredeyse tamamı güvenliğin sadece bir boyutunu ele

almış ve dolayısıyla diğer boyutlar için farklı güvenlik önlemlerine ihtiyaç

duyulmuştur. Buna ek olarak güvenlik gereksinimleri uygulamadan uygulamaya

değişmektedir. Kimi uygulamalar iletilen verinin tamamının güvenli hale

getirilmesini istemekte, kimi uygulamalar herhangi bir alıcı erişim kontrolü

yapmamaktadır. Çok hedefli iletimin kullanım alanının çok geniş olması güvenlikle

ilgili çeşitli sorunları da beraberinde getirmektedir. Güvenlikle ilgili parametrelerin

tek bir yerde toplanması fikri bu sayede ortaya çıkmıştır. Uygulama içeriğinin yetkisi

olmayan varlıklardan korunması ve kötü niyetli kişilerin sistemi etkileyememesi için

oluşturulan genel kurallar bütünlüğüne güvenlik politikası denmektedir. Bir başka

deyişle, grup güvenlik politikası grup iletişimine katılan veya yardımcı olan

varlıkların erişim haklarını, üstlendiği rolleri ve grup güvenliği ile ilgili işlevlerini

güvenlik bakış açısıyla belirten tanımlamalardır [110]. Güvenlik bağlamında grup

tanımları; anahtar kümeleri, üyeler, grup iletişimini güvenli hale getiren protokoller

ve algoritmalardan oluşmaktadır. Grup güvenlik politikası, doğrudan veya dolaylı

olarak güvenlik bağlamındaki tanımların nasıl türetileceğini ve kullanılacağını ifade

etmektedir. Buna ek olarak güvenlik politikası çatısı ise, güvenli grup politikasını

belirlemek, yorumlamak, müzakere etmek ve dağıtmak için kullanılan varlıkları ve

protokolleri tanımlamaktadır. Politikalar, grup politikaları ve yerel politikalar olmak

üzere ikiye ayrılmaktadır. Grup politikası grup davranışlarını belirtmektedir. Bu

tanımların içerisinde, üyelere sunulan güvenlik garantileri ve üyelerin birbiri

arasındaki etkileşimlerin nasıl olacağı bulunmaktadır. Yerel politika ise yerel

varlıkların gereksinimlerini ve tanıtıcılarını (credential) belirlemektedir. Grup

politikası alındığında yerel politika ile birlikte değerlendirilerek kesişimi

alınmaktadır. İki politikanın farklı olmasından kaynaklanan uyuşmazlıklar

sonucunda varlık, grup iletişimine dahil olmamaktadır. Yerel politikada; grup

davranışları için minimum standartların belirtilmesinin yanında, hangi varlıkların

veya tanıtıcıların otorite sahibi olduğunun da belirtilmesi gerekmektedir.

Uygulanacak güvenlik politikasının boyutlarında anlaşma sağlandıktan sonra,

175

politikanın tanımlanmasına geçilmektedir. Bu iş için politika tanımlama dilleri

kullanılmaktadır. Politika dilleri sayesinde bir politikanın nasıl sunulacağı ve

yorumlanacağı belirli kurallara bağlanmaktadır. Politika dillerinin tamamen belirli,

açık ve mümkün olduğu kadar az ve öz olması gerekmektedir. Yerel ve grup

politikası üzerinde uzlaşılması, grup iletişiminin başlayabilmesi için büyük önem

taşımaktadır. Grup politikası müzakereler sırasında değişime uğrayabilmektedir. Bu

değişimin kaynağı, değişken özelliklere sahip alıcı sistemlerdir.

Grup politikasının tam olarak anlaşılabilmesi için öncelikle grup modelinin

anlaşılması gerekmektedir. Grup modeli GSAKMP protokolündeki [79] tanımlarla

benzeşmektedir. Bu modelde varlıkların rolleri tanımlanmaktadır. Tanım olarak rol,

bir varlığın haklarını ve sorumluluklarını belirtmektedir. Grup iletişimine dahil olan

bir sistem tablo [6.6]’da belirtilen rollerden en az birini üstlenmektedir [111]. Grup

iletişimine ve güvenliğine dahil olan varlıkların listesi ve üstlendikleri roller tablo

[6.7]’de verilmektedir. Burada yapılan rol tanımları sadece bilgi amaçlıdır. Tablo

[7.7]’de gösterilmekte olan grup sahibi, grubu başlatan ve grup politikasını kontrol

eden varlıktır. Grup sahibi, bu görevlerinin yanı sıra diğer yönetim görevlerinin

hangi otoriteler tarafından yürütüleceğini belirlemektedir. Grup anahtar otoritesi,

anahtarlama ile ilgili görevlerin toplandığı varlıktır. Anahtarların üretilmesi ve

anahtarlama mekanizmalarıyla ilgili diğer bilgilerin gruba dağıtılması bu varlık

tarafından kontrol edilmektedir. Grup anahtar otoritesinin, grubun bir üyesi olması

gerekmemektedir.

Tablo 6.6 Rol tanımlamaları

# Aksiyon Açıklama

1 Anahtar üretimi Oturum anahtarı üretme veya tekrar anahtarlama hakkı

2 Anahtar dağıtımı Üretilmiş anahtarları üyelere dağıtma hakkı

3 Tekrar anahtarlama tetiklemesi Grubun tekrar anahtarlanmasını başlatma hakkı

4 Anahtar erişimi Oturum anahtarını elde etme hakkı

5 Politika üretimi Grup genelinde kullanılacak politikası üretme hakkı

6 Politika değiştirme Grup politikasını değiştirebilme hakkı

7 Hak tanımlama Üyelere veya harici varlıklara hak delegasyonu

8 Üyenin yetkilendirilmesi Grup üyesini yetkilendirebilme hakkı

9 Sistemin üyeliğe kabul edilmesi Bir sistemin grup üyeliğine kabul etme hakkı

10 Üyenin gruptan atılması Bir üyeyi gruptan çıkarma hakkı

11 Grubu denetleme Kontrol mesajlarının, üyelik bilgilerinin denetlenmesi hakkı

176

Tablo 6.7 Grup iletişimine dahil olan varlıkların rolleri

# Rol EriĢim Hakları

1 Grup sahibi 5, 6, 7, 11

2 Grup anahtar otoritesi 1, 2, 3, 4, 11

3 Grup üyelik otoritesi 8, 9, 10

4 Grup üyesi 4

Grup politikası, bir başka deyişle grup üyeleri tarafından gerçeklenen grup

hizmetlerini ve katılımcı rollerini belirlemektedir. Şekil 6.27’da grup güvenlik çatısı

dağıtım şeması gösterilmektedir.

Politika deposu

Grup sahibi

Anons

mekanizmasıGrup üyesi

GDAS

Çok hedefli iletim

Okuma hakkı

Yazma hakkı

Şekil 6.27 – Grup güvenlik çatısı dağıtım şeması

IRTF SMuG araştırma grubu içerisinde tartışılan üçüncü problem alanı; politika

çatısının belirlenmesi, politikaların dağıtımı ve politika üzerinde uzlaşılmasıyla ilgili

problemleri içermektedir. Çok hedefli iletim uygulamalarının hizmet sağlayıcı –

abone modeliyle çalıştığı varsayıldığında hangi sistemlerin abone olabileceği, ne tür

bir korunma istendiği ve güvenlik açıkları meydana geldiğinde hangi aksiyonların

alınacağı gibi ayrıntılar hizmet sağlayıcı tarafından belirlenmektedir. Dolayısıyla

politikanın tamamı hizmeti sağlayan varlık veya varlıklar tarafından

tanımlanmaktadır. Fakat hizmete abone gözüyle bakıldığında, bu her zaman yeterli

olmamaktadır. Çoğu zaman verilen hizmet belirli bir ücret karşılığı verildiği için,

aboneler belirli bir hizmet kalitesi talep etmektedir. Abone dağılımının çok geniş

olduğu durumlarda güvenlik politikasının belirli bir kısmı üzerinde anlaşılması

177

gerekmektedir. Bu sahfa politika müzakeresi ve uzlaşması olarak

isimlendirilmektedir. Müzakere ve uzlaşma sonrasında çözülemeyen

uyuşmazlıklarda son söz daima politikayı tanımlayan hizmet sağlayıcıdadır.

Politikanın dağıtımı ve yaptırımı için ilk olarak grup sahibi, politika parametrelerini

GDAS’a göndermektedir. Sistemlerin gruba üye olabilmesi için politikanın ne

kadarının anons edileceği politika içerisinde belirtilmektedir. Belirtilmediği

zamanlarda ise buna GDAS karar vermektedir. Erişim kontrolü, grup yönetiminin

sorumluluklarının aktarılması gibi görevler GDAS tarafından icra edilmekte, veri

güvenliği kaynak tarafından sağlanmaktadır. Grup üyelerinin bu kurallara uyması

beklenmektedir. Aksi durumlarda grup üyeleri gruptan atılmaktadır.

Grup güvenlik politikası kendi içinde alt bölümlerden oluşmaktadır. Bu bölümler

tekrar anahtarlama, erişim kontrolü, veri güvenliği, üye veri politikası, ele geçirilme

(compromise) politikası, başarısızlık (hata) politikası ve etki alanına bağımlılık

politikasıdır. Tekrar anahtarlama politikasında grubun tekrar anahtarlanması ile ilgili

parametreler belirlenmektedir. Oturum anahtarlaması ile ilgili özellikler aşağıda liste

halinde verilmektedir.

1. Oturum anahtarı bağımsızlığı: Bir oturumla ilgili bilgilerden herhangi bir

başka oturumla ilgili bilgiler elde edilememesi.

2. İleriye doğru eksiksiz gizlilik: Bir oturum anahtarının gelecekte

kullanılacak oturum anahtarlarına ilişkin herhangi bir bilgi içermemesi.

3. İleriye doğru üyelik gizliliği: Gruptan ayrılan üyenin gelecekteki grup

iletişimi hakkında herhangi bir bilgi edinememesi.

4. Geriye doğru eksiksiz gizlilik: Bir oturum anahtarının geçmişte

kullanılmış olan oturum anahtarlarına ilişkin herhangi bir bilgi

içermemesi.

5. İleriye doğru üyelik gizliliği: Gruba yeni katılan bir üyenin geçmişteki

iletişim hakkında herhangi bir bilgi edinememesi.

6. Başarısızlık (failure) gizliliği: Herhangi bir hata üretmiş olan sürecin aktif

veya pasif olarak grup içerisinde yer almasının engellenmesi.

7. Ele geçirilme gizliliği: Kötü niyetli kişiler tarafından ele geçirilmiş bir

sürecin aktif veya pasif olarak grup içerisinde yer almasının engellenmesi.

8. Yaşam süresinin kısıtlı olması: Oturum anahtarının yaşam sürelerinin

kısıtlanması.

178

Erişim kontrol politikası gruba dahil olan her bir varlığın görevlerinin, haklarının ve

kimliklerinin belirtildiği politika bileşenidir. Roller ve varlıkların görevleri tablo

[6.6] ve [6.7]’de açıklanmaktadır. Veri politikası, uygulama seviyesindeki mesajlar

için garanti edilen güvenlik seviyesinin belirtilmesidir. Bu politika bileşeni içerisinde

doğrudan veya dolaylı olarak birinci problem alanı olan veri dönüşümlerinin nasıl

yapılacağı tanımlanmaktadır. Garanti edilebilecek güvenlik özellikleri aşağıda

belirtilmektedir.

1. Gizlilik: Grup mesajlarının grup üyeleri haricinde hiç kimse tarafından

okunamayacağının garanti edilmesidir.

2. Bütünlük: Grup mesajlarının yol üzerinde değiştirilmesinin alıcı sistemler

tarafından sezileceğinin garantisidir.

3. Grup kimlik doğrulaması: Alınan mesajın herhangi bir grup üyesi

tarafından gönderilip gönderilmediğinin saptanabilmesi garantisidir.

4. Kaynak kimlik doğrulaması: Verinin kaynağının eşsiz olarak

doğrulanabileceğinin garantisidir.

5. Gönderimin reddedilememesi: Verinin kimliği doğrulanmış kaynak

tarafından gönderildiğinin inkar edilememesinin garantisidir.

6. Anonimlik: Veriyi gönderen kaynağın kimliğinin alıcılar tarafından

bulunmayacağının garantisidir.

Bu özellikleri sağlayan kriptografik algoritmalar değişken güçte ve performanstadır.

Veri güvenliği politikası, veri güvenliğinin ne tür bir algoritma ile sağlanacağını da

belirtmektedir. Kriptografik algoritmalar söz konusu olduğunda iki tür gizlilik söz

konusudur. Geçici tür gizlilikte korunan veri sadece kısa bir süre korunmaktadır. Bir

başka deyişle güvenlik algoritmasından istenen, veriye kolay erişimin

engellenmesidir. Diğer tür gizlilik ise uzun dönem gizliliğidir. Bu tür gizlilikte

verinin korunması yüksek garantili algoritmalar ile yapılmaktadır. Üye veri politika

bileşeninde, grup üyelik bilgisi belirtilmektedir. Buna ek olarak bu bilginin ne kadar

isabetli olduğunun garantisi ve bu bilgilerin dağıtımıyla ilgili bilgiler de

belirtilmektedir. Üyelik bilgilerinin tanımlanması pek çok uygulama için önem

taşımaktadır. Aşağıdaki listede birkaç üye veri politika biçimi açıklanmaktadır.

179

1. En iyi çaba (best-effort) üye verisi: Böyle bir üye veri politikasında üyelik

bilgileri kullanılabilir olduğu zaman iletilmektedir. Her hangi bir garanti

yoktur.

2. Pozitif üye verisi: Üyelik bilgileri içerisinde bulunan bütün üyelerin aktif

olarak gruba katıldığının (bir başka deyişle grup trafiğini aldığının)

garanti edildiği politika biçimidir.

3. Negatif üye verisi: Bu biçimdeki politikada güvenlik içeriğine dahil olan

bütün üyelerin listelenmesi garanti edilmektedir.

4. Eksiksiz üye verisi: Böyle bir politikadaki üye veri bilgisinde grup trafiği

aktif olarak alan ve güvenlik içeriğine dahil olan bütün üyeler

listelenmektedir. Bir başka deyişle eksiksiz üye verisi, pozitif ve negatif

üye verilerinin toplamıdır.

Üye veri politikası ile ilgili bir başka parametre ise grup üyelik bilgilerinin

gizliliğidir. Böylece bu bilgilerin kimlerle paylaşılacağı belirlenmektedir. Ele

geçirilme politika bileşeni ne tür aksiyonların ele geçirilme olarak sayıldığının, bu

aksiyonların nasıl raporlanacağının ve sistemin eski haline getirilmesi için neler

yapılması gerektiğinin belirtildiği bileşendir. Ele geçirilme bileşeni tam olarak

tanımlanmamıştır [110]. Başarısızlık politika bileşeninde, ne tür aksiyonların hata

olarak kabul edilmesi gerektiği, bu hataların nasıl bulunacağı, bu hataların

algılanması için hangi mekanizmaların kullanılacağı, raporlama ve sistemin

düzeltilmesi için neler yapılması gerektiği belirtilmektedir. Bu bileşenin

tanımlamaları bir süreç için oluşturulmuş olan çakılma modelinden [111] esinlenerek

oluşturulmalıdır. Çok hedefli iletim güvenliği içerisinde kullanılan süreçlerin “hata

oluştuğu zaman duran” modeline uygun çalıştığı varsayılmaktadır.

Başarısızlığın bulunması ve sistemin eski haline getirilmesi için kullanılan teknikler

oluşturulurken, çoğu zaman güvenlik düşünülmemektedir. Etki alanına bağımlılık

politikası, güvenlik içeriğinin çok hedefli iletim hizmetlerinin haricinde bir otorite

tarafından belirtilen politika bileşenidir. Böyle bir politika, harici bir olaya veya

duruma bağlı olarak grup davranışının nasıl değişmesi gerektiğini tanımlamaktadır.

Etki alanına bağımlılıkla ilgili bütün politika özelliklerinin çıkarılması pratik

değildir. Bunun yerine harici olay ve durumları bildirebilen esnek arabirimlerin

tanımlanması yoluna gidilmektedir.

180

Grup politikasının yanı sıra yerel güvenlik ve performans parametrelerinin

belirlendiği ve sadece tanımlandığı sisteme özgü olan bir politika çeşidi daha

mevcuttur. Bu politikaya yerel politika denmektedir. Yerel politikanın iki farklı

bileşeni bulunmaktadır [110]. Bu bileşenler altyapı politika bileşeni ve politika

gereksinimleri bileşenidir. Altyapı bileşeni içerisinde güvenilmekte olan yerel

güvenlik otoriteleri ve tanıtıcıların nasıl alınması gerektiğine dair tanımlamalar

yapılmaktadır. Buna ek olarak yerel sistemin hangi gruplara katılmaya izni olduğu

bilgisi dolaylı yoldan belirtilebilmektedir. Yerel sistem içerisinde barındırılan

tanıtıcılar, uzun vadeli anahtarlar olabilmektedir. Altyapı politikası, bu tanıtıcıların

kimliklerinin belirlenmesi, yerlerinin bulunması ve bu tanıtıcılarla ilgili

mekanizmaların tanımlanması için kullanılmaktadır. Yerel sistemin çok hedefli

gruplara üye olabilmesi, bu tanıtıcılara bağlıdır. Bu tanıtıcılara örnek olarak yerel

dosya sisteminde bulunan bir anahtar dosyası verilebilir. Gruba üye olunması

sırasında edinilen kimlik ve tanıtıcıların doğrulanması ile ilgili tanımlamalar ayrıca

bu bileşenin görevidir. Yerel olarak güvenilen sertifika otoritesi ve grup politikasının

dağıtım noktalarının yeri, bu parametrelere örnek olarak gösterilebilir. Politika

gereksinimleri bileşeni yerel sistemin kabul edeceği minimum hizmetleri belirtmek

için kullanılmaktadır. Gereksinimler aşağıda açıklanmaktadır.

1. Güvenilir varlıklar: Bu alt bileşende hangi varlıkların grupla ilgili hangi

rolleri alabileceği belirtilmektedir. (Örneğin anahtar yöneticisi varlığı

belirli bir adres olan gruplar.)

2. Veri güvenlik politikaları: Bu alt bileşende grupla ilgili olarak sağlanması

gereken minimum veri dönüşümleri belirtilmektedir.

3. Diğer.

Politika gereksinimleri gruba katılım veya grubun oluşturulması sırasındaki politika

müzakerelerinde belirleyici rol oynamaktadır.

Çok hedefli iletimle ilgili politikalar, yüksek seviyede tanımlanmaktadır. Bu tanımlar

grup güvenlik politika spesifikasyonları kullanılarak cihazların anlayabileceği dillere

çevrilmektedir. Pek çok politika tanımlama dili, varlıkları, varlıkların birbirleriyle

olan ilişkisini, rolleri ve herhangi bir durum oluştuğunda uygulanması gereken

aksiyonları tanımlamaktadır. Günümüzde en çok kullanılan politika tanımlama dilleri

Ismene[110], CCNT [113] ve grup güvenlik politikası “token”’idir [114].

181

6.2.4.1 Ismene Politika Tanımlama Dili

Ismene politika spesifikasyonu [112] iki bileşenden oluşmaktadır. İlk bileşen tedarik

etme ve yetkilendirme, ikinci bileşen ise erişim kontrolüdür. Grup sahibi tarafından

tanımlanmakta olan grup politikası, yerel sistemlerde bulunan yerel politikalarla aynı

potada eritilerek tek bir politika üzerinde anlaşılmaktadır. Ismene içerisindeki

politika tanımları ya bir oturum gereksinimi (tedarik etme) olarak ya da bir politika

yaptırımı (yetkilendirme ve erişim kontrolü) olarak yazılmaktadır. Her bir politika

cümlesi bir etiket ile gösterilmektedir. Bir cümlede etiketten sonra koşullar ve

neticeler bulunmaktadır. Cümle yapısı “etiket: koşullar : neticeler ;” şeklindedir. Bu

cümlelerin kökeni şebeke ortamından, sistem yapılandırmasından ve üye

tanıtıcılarından gelmektedir [112]. Tedarik cümleleri içerisindeki neticeler, bir

gereksinimin nasıl karşılanacağını belirten “yapılandırma” neticeleri; ilgili güvenlik

altyapısının sağlanması için gereken alternatif mekanizmaların tanımlandığı “seçme”

neticeleri ve ya politikaya biçim kazandıran “etiket” neticeleridir. Politika yaptırım

aksiyonlarının değerlendirilmesi, bir “kabul etme” veya bir “tekrar yapılandırma” ile

sonuçlanmaktadır. Ismene politika dili dinamik olduğu için, kullanım sırasında

değişimlere izin vermektedir. Aşağıda verilmekte olan Ismene politika örneğinde

erişim kontrol listesi bulunmakta, mesaj bütünlüğü HMAC-SHA-1 algoritması ile

sağlanmakta, kaynak kimlik doğrulaması TESLA ile yapılmakta, veri şifrelemesi için

AES ve tekrar anahtarlama için LKH kullanılmaktadır.

group :=<Ismene ornek politikasi>;

provision : :: access_control, group_management;

ACL := <{Ahmet}, {Mehmet}, {Ayse}>;

access_control: is_in_list(ACL) :: allow_member;

group_management : :: key_dist, rekeying, data_protection;

key_dist : :: config(GDOI());

rekeying : :: config(GDOI(GKMA = LKH, enc.algm = AES));

data_protection : :: config(MESP(data.encr, data_integrity));

data_encr : :: config(enc_algm = AES);

data_integrity : :: config(TESLA(MAC_algm = HMAC-SHA-1));

182

6.2.4.3 DCCM Kriptografik Ġçerik Müzakere ġablonu (CCNT)

DCCM Kriptografik İçerik Müzakeresi Şablonu (DCCM Cryptographic Context

Negotiation Template, CCNT) [113], politika ve içerik müzakerelerinin

yapılabilmesi için oluşturulmuştur. CCNT, Dinamik Kriptografik İçerik Yönetim

(Dynamic Cryptographic Context Management, DCCM) sistemi [115] içerisinde yer

alan bir bileşendir. DCCM bakış açısıyla politika, yüksek seviyedeki sistem ve

güvenlik gereksinimlerin ve içeriğinin, belirli bir proje için müzakeresi sonucu ortaya

çıkan kümedir. CCNT, Backus-Naur formundaki dilbilgisi ile yazılmaktadır ve çeşitli

politika kategori değerleriden oluşmaktadır. Bu kategorilere ve değerlere örnek

olarak güvenliğin seviyesi (yüksek, orta, düşük), veri doğrulaması (RSA, DSA),

varlıkların kimliklerinin doğrulanması (şifreler veya RADIUS [116]), şifreleme

algoritması (AES, 3DES), grup anahtar yönetimi algoritması (LKH, OFT) gibi

kategoriler verilebilir. CCNT, grup içerisinde meydana gelen olaylar sayesinde

değiştirilememektedir. Bir başka deyişle CCNT yapısı dinamik değildir. Aşağıdaki

örnekte Politika1(0,0,1,1,~) politikası gösterilmektedir. Bu politikada erişim

kontrolü, erişim kontrol listeleriyle yapılmaktadır. Anahtar yönetimi için GDOI

kullanılmaktadır. Şifreleme için 3DES tercih edilmektedir. Veri doğrulaması MD5

ile sağlanmakta ve herhangi bir kaynak kimlik doğrulaması uygulanmamaktadır.

access_control(ACLs, authorization_certs)

key_management_protocol(GDOI, GSKAMP)

encryption_algorithm(AES,3DES)

MAC_algorithm(SHA-1, MD5)

source_authentication_scheme(TESLA, augmented_chaining, tree_block_hashing)

6.2.4.3. Grup Güvenlik Politikası “Token”’i (GSPT)

IETF bünyesinde kurulmuş olan MSEC çalışma grubu, grup güvenlik politikası ile

ilgili gereksinim tanımlarına [109] ek olarak, bir altyapı çalışması yürütmektedir.

Politika tanımlaması ve dağıtımı için bu çalışma sayesinde Grup Güvenlik Politikası

“Token”’i (Group Security Policy Token, GSPT) [114] oluşturulmuştur. GSPT

içerisinde, grupla ilgili operasyon tanımlamaları ve güvenlik parametreleri

bulunmaktadır. GSPT bileşenleri; yetkilendirme politikası, erişim kontrol politikası

ve içeriğin korunmasıyla ilgili mekanizmaların tanımlarıdır. Her bir GSPT’nin bir

183

kimliği bulunmaktadır. GSPT, grup sahibi tarafından imzalanmaktadır. Şekil 6.28’de

GSPT bileşenleri gösterilmektedir.

Sürüm Grup güvenlik protokolü Grup Kimliği Zaman damgası

Grup sahibi GDAS Tekrar anahtarlama sunucusu

Veri güvenlik SA‟i Kaydolma SA‟i

Erişim izinleri Üyelerin erişim listesi

Tekrar anahtarlama SA‟i

İmzalayanın kimliği Sertifika bilgisi İmza verisi

Jeton Kimliği Yetkilendirme Erişim Kontrolü Mekanizmalar İmza

Şekil 6.28 – GSPT bileşenleri

Grup güvenlik politikası çatısında en önemli rol grup sahibine verilmiştir. Grup

sahibi, grubu başlatan ve güvenlik politikası içerisindeki parametreleri belirleyen

varlık olarak tanımlanmaktadır [114]. Dolayısıyla grupla ilgili bütün bilgilerin

kaynağı grup sahibi olmaktadır. Politika “token”’larının doğrulanması işlemlerinde

kullanılmakta olan bütün sertifikaların kökünde grup sahibi bulunmaktadır. Aynı

durum, GDAS ve benzeri varlıklara yapılan sorumluluk aktarım sertifikaları için de

geçerlidir. Burada amaç, grup ile ilgili yetkilendirmelerin tek kaynağının grup sahibi

olmasıdır. Grup ile ilgili erişim kontrolü söz konusu olduğunda; bilgilerin hangi

bölümlerinin hangi varlıklara erişilebilir kılınması gerektiği ile ilgili bilgiler sadece

grup sahibi tarafından tanımlanabilmektedir. Gruba üye olmak isteyen herhangi bir

sistemin, grup ile ilgili politika bilgilerinin bazılarına üye olmadan önce erişebiliyor

olması gerekmektedir. Bunun için bir anons mekanizmasına ihtiyaç duyulmaktadır.

Aksi halde sistemler, güvenlik parametrelerini bilmedikleri gruplara üye

olamamaktadır. Anons mekanizması içerisinde konması gereken bilgiler tıpkı daha

önce olduğu gibi grup sahibi tarafından belirlenmektedir. Şekil 6.28’de görüldüğü

üzere GSPT, toplam beş ana bölümden oluşmaktadır. Alt bölümlerin biçimi ASN.1

Politika “Token” Tanımlaması’nda [114] açıklanmaktadır. “Token” kimliği olarak

isimlendirilen ilk bileşende jetonun hangi protokol ailesine ait olduğu bilgisi

bulunmaktadır. Protokol ailesine örnek olarak GSAKMP [79] ve GDOI verilebilir.

Sürüm bölümünde, jetonun sürüm numarası bulunmaktadır. Grup kimliği, grup ile

184

ilgili IP adreslerinden ve seri numaralarından oluşmaktadır. Zaman damgası, tekrar

gönderim saldırılarına önlem olarak eklenmiştir. Zaman damgası alanının bir başka

görevi de “token”’ın ne kadar süre geçerli olacağı bilgisinin taşınmasıdır.

Yetkilendirme bölümü içerisindeki parametreler sayesinde grup üyeleri, güvenlik ile

ilgili aksiyonların sadece yetkili varlıklar tarafından yapıldığından emin olmaktadır.

Böylece kötü niyetli bir grup üyesinin, grubun güvenliğini ilgilendiren işlemleri

yürütmesi veya tetiklemesi engellenmektedir. Yetkilendirme bölümünün içerisindeki

alanlarda grup sahibi, GDAS ve tekrar anahtarlama sunucusu bilgileri bulunmaktadır.

Buradaki tanımlar belirgin bir şekilde veya dolaylı şekilde yapılabilmektedir. Bir

başka deyişle joker karakterler kullanılabilmektedir. Tekrar anahtarlama sunucusu

alanı, yedek bir GDAS tanımlanması gerektiği zaman kullanılmaktadır. Gruba

katılmak isteyen sistemler ilk olarak bu alanı kontrol etmektedir. Katılım

gerçekleştikten sonra grup anahtarlarının dağıtımı sırasında anahtarların “token”

içerisinde bu bölümde tanımlanan sunuculardan geldiğinin kontrolü mutlaka

yapılmalıdır. Aynı durum güncel üyeler için de geçerlidir. Erişim kontrolü bölümü,

potansiyel bir grup üyesinin hangi anahtarları almaya hakkı olduğunun tanımlandığı

bölümdür. Bir başka deyişle bu bölümde, hangi sistemlerin gruba dahil olabileceği

belirtilmektedir. Joker karakterler, bu bölümde de kullanılabilmektedir. Çok hedefli

olarak iletilen verinin güvenliğiyle ilgili hizmetlerde kullanılan parametrelerin

grubun her noktasında aynı olması gerekmektedir. Örneğin verinin gizliliği için

üyelerin belli bir kısmının AES, diğerlerinin DES kullanması sonucunda genel veri

gizliliğin gücü en zayıf algoritma kadar olacaktır. Bu tür parametreler, GSPT

içerisinde mekanizmalar bölümünde tanımlanmaktadır. Bölümü oluşturan alanlar

içerisinde grup güvenlik ilişkilerinde (GSA) açıklanmış olan üç farklı güvenlik

ilişkisine (SA) ait bilgiler bulunmaktadır. Şekil 6.29’de mekanizmalar bölümünü

oluşturan alanlar gösterilmektedir.

Üçüncü kategori SA(Veri güvenlik SA‟i)

Birinci kategori SA(Kaydolma SA‟i)

İkinci kategori SA(Tekrar anahtarlama SA‟i)

Korunan Açık

Şekil 6.29 – GSPT mekanizmalar bölümü alanları ve GSA karşılıkları

Şekil 6.29’de gösterilmekte olan yapıda, tekrar anahtarlama SA’sı iki farklı alana

bölünmüştür. “Korunan” alanında bulunan SA, grup anahtar yönetimi ile ilgili

mesajlar için kullanılmaktadır. Gruba dahil olan bütün üyelerin korunan grup anahtar

185

yönetimi mesajlarını alamadığı durumlarda, gizlilikten ödün verilerek ilgili bilgiler

“açık” bölümünde yollanmaktadır. İmza bölümünde grup güvenlik “token”’ının

içeriğini doğrulamak için kullanılan bilgiler bulunmaktadır. Bu bilgiler sayesinde

“token”’ı imzalayan varlığın kimliği, ilgili sertifika altyapısına ait bilgiler ve imza

verisi açık olarak doğrulanabilmektedir. İmza, imza bölümü haricindeki bütün

bölümleri kapsamaktadır. Böylece jeton içerisindeki herhangi bir değişiklik, imzayı

geçersiz kıldığı için ortaya çıkarılabilmektedir.

Grup güvenlik politika dilleri analiz edildiğinde, CCNT ve Ismene spesifikasyonları

grup kurulumu sırasında müzakereleri ve sonrasında uzlaşmayı desteklemektedir.

GSPT spesifikasyonunda durum bu şekilde değildir ve tanımlamalar tek taraflı olarak

yapılmaktadır. Ismene ve GSPT dillerinin kullanıldığı gruplarda politika dinamik

olarak değiştirilebilmektedir. Böylece değişen uygulama isteklerine ve ortama ayak

uydurulabilmektedir. Ismene dilinde yapılan politika tanımlamalarının koşullara göre

düzenlenebilmesi sayesinde esneklik sağlanmaktadır. Çoğu çok hedefli iletim

uygulaması için GSPT spesifikasyonunun kullanımı yeterli olmaktadır. Bu sebepten

dolayı IETF bünyesindeki MSEC çalışma grubu, GSPT spesifikasyonunun GDOI ve

GSAKMP anahtar dağıtım protokolleriyle birlikte kullanılabilmesi için çalışmalarda

bulunmaktadır. Ismene politika dili içerisinde, hizmet sağlayan varlık ile aboneler

arasındaki uzlaşma, grup ve yerel politikaların kesişimi ile sağlanmaktadır. Grup

sahibi grup politikasını tanımlarken, karşılıklı uzlaşılmasını istediği parametreleri

çok seçenekli olarak tanımlamaktadır. Böylece yerel politikadaki seçenekler göz

önünde bulundurularak uzlaşma sağlanmaktadır. Birden fazla seçenek olduğu zaman

uzlaşmanın hangi ölçütlere göre yapılacağı önem kazanmaktadır. Burada önemli

olan, abonelerin hizmet dışı kalmasına sebep olunmamasıdır. En kolay yol,

çoğunluğun parametrelerine uyulmasıdır. Fakat bu yol kimi zamanlarda abonelerin

tamamının hizmet almasını engellemektedir. Örneğin yerel politikaları <3DES,

MD5, şifre>, <AES, MD5, Sertifika> ve <3DES, SHA-1, Sertifika> olan üç abone

göz önüne alındığında çoğunluğa uyulduğu zaman ortaya çıkan politika <3DES,

MD5, Sertifika> olacaktır. Bu durumda hiçbir üye gruba dahil olamayacaktır.

Abonelerin hizmetten mahrum kalmaması için kullanılan bir yol, otomatik

uzlaşmaya hiçbir şekilde izin verilmemesidir. Buna örnek olarak GSPT verilebilir.

Kapalı gruplarda politika müzakereleri güvenli kanallar üzerinden yapılmaktadır.

Müzakere ile ilgili mesajlaşmaların tamamı şifrelenmektedir. Fakat açık gruplarda

186

durum bu şekilde değildir. Politika müzakereleri açık olarak yapılmakta olduğu için

ortadaki adam (man in the middle) saldırıları gerçekleştirilebilmektedir. Bu tür

saldırılar aşağı seviyeye indirme (downgrade) saldırıları olarak isimlendirilmektedir.

Bu tür saldırıların engellenebilmesi için açık gruplarda dahi politika müzakeresinin

güvenli şekilde yapılması gerekmektedir.

6.3. Çok Hedefli Ġletim Altyapı Güvenliği

S. Deering tarafından oluşturulmuş olan temel çok hedefli iletim modeli altyapısında

herhangi bir güvenlik önlemi bulunmamaktadır. Çok hedefli iletim yönlendiricileri,

çok hedefli iletim gruplarının üyeleri hakkında herhangi bir kimlik bilgisi

tutmamakta ve bu tür bilgileri üst dallardaki yönlendiricilere iletmemektedir. Böyle

bir mekanizmanın yokluğu, ölçeklenebilirliği beraberinde getirmektedir [117].

Güvenlik çerçevesinden bakıldığında, altyapı içerisinde kimlik bilgilerinin

taşınmaması, erişim kontrolünün yapılmasını engellemektedir. Böylelikle kötü niyetli

kişilerin kontrolünde olan bir sistem, iletilen içerik şifreli olsun veya olmasın çok

hedefli iletim gruplarına üye olabilmekte ve altyapı içerisinde kurulan dağıtım

ağacını kendi yerel şebekesine çekebilmektedir. Sonuç olarak, yerel şebeke yolu

üzerinde olan yönlendiricilerde boşu boşuna durumlar oluşturularak sistem

kaynakları boşa harcanmaktadır. Kötü niyetli kişilerin kontrolünde olan sistemin bu

işlemleri yüz binlerce grup adresi için uyguladığı düşünüldüğünde dağıtım ağacı

içerisindeki yönlendiriciler kullanılamaz hale gelmektedir. Bu ve bunun gibi

saldırıların önlenmesi için çok hedefli iletim altyapısının koruma altına alınması

gerekmektedir. Altyapı güvenliği üç bileşenden oluşmaktadır [117]. Bu bileşenler

aşağıda açıklanmaktadır.

1. Çok hedefli iletim dağıtım ağacı güvenliği: Dağıtım ağacının korunması

için yapılması gerekenler, altyapıda kullanılan yönlendirme protokolünün

güvenliği ile ilgilidir. Bir başka deyişle, altyapıda kullanılmakta olan

protokollere ait kontrol mesajlarının korunması gerekmektedir. Bu tür

güvenlik önlemleri protokolden protokole değişmekle birlikte genel

olarak mesajlar ile ilgili doğrulama işlemlerinden oluşmaktadır.

2. Uçtan uca veri güvenliği: Çok hedefli iletim grubu içerisine

gerçekleştirilen veri dağıtımının şifrelenerek yol üzerinde değişimlerden

187

korunması, kaynak kimlik doğrulaması yapılması ve gizliliğin sağlanması

ile ilgili kriptografik operasyonlardan oluşmaktadır.

3. Alt şebeke bazında yapılan üye erişim kontrolü: Yerel şebeke içerisinde

belirli bir çok hedefli iletim grubu için gerçekleştirilen kimlik

doğrulamasından ve iletim ile ilgili yönlendirici yetkilerinin kontrolünden

oluşmaktadır.

Altyapı güvenliği ile ilgili bu üç bileşen şekil 6.30’da [117] gösterilmektedir.

K

Y

s

s

RP

Y

ssA

IGMP

IGM

P

Ço

k h

ed

efli ile

tim d

ıtım a

ğa

RP Randevu noktası

Y Çok hedefli iletim yönlendiricisi

A Alıcı

K Kaynak

s sistemler

Şekil 6.30 – Altyapı Güvenliği Bileşenleri

Şekilde belirtilmekte olan altyapı güvenlik bileşenlerine karşı pek çok saldırı

gerçekleştirilebilmektedir. Dağıtım ağacına yapılabilecek saldırılar, genel olarak iki

kategoriye ayrılmaktadır. Bunlar kaynak ve alıcı saldırılarıdır. Kaynak saldırılarında,

dağıtım ağacına sahte paketler gönderilmektedir. Bu paketlerin hedef grup adresleri

doğru olduğu için, dağıtım ağacı sayesinde bütün alıcı sistemlere iletilmektedir. Bu

tür paketler, yaprak şebekelerden veya ağacın herhangi bir noktasından dağıtım

ağacına dahil edilebilmektedir. Bütün alıcı sistemler bu paketleri aldığı için

bandgenişliği boşa harcanmaktadır. Bu tür saldırılar tek hedefli iletim içerisinde de

gerçekleştirilebilmektedir. Fakat çok hedefli iletim söz konusu olduğunda saldırının

boyutu alıcı sistem sayısı kadar katlanmaktadır. Alıcı saldırılarında ise gruba üye

olmayan sistemler gruba katılma mesajları göndermekte ve böylece çok hedefli

iletim trafiği bu sistemlere de iletilmektedir. Saldırıyı gerçekleştiren sistemler çok

hedefli iletim verisini deşifre edemese dahi böyle bir saldırı altyapı kaynaklarının

188

boşa harcanmasına neden olmaktadır. Her iki saldırı türü de, hizmetin

sürdürülememesine sebep olmaktadır.

6.3.1. Yerel ġebeke Güvenliği

Çok hedefli iletim altyapısı, genel olarak çekirdek ve yapraklar olmak üzere ikiye

ayrılmaktadır. Çekirdek tarafta, dağıtım ağacını oluşturan çok hedefli iletim

yönlendiricileri ve yönlendirme protokolleri bulunmaktadır. Yaprak tarafta ise,

dağıtım ağacının yapraklarında bulunan çok hedefli iletim uç yönlendiricileri ve

sistemler bulunmaktadır [118]. Grup üyelik işlemleri için IGMP kullanılmaktadır.

IGMP protokolleri oluşturulurken güvenlik ikinci planda tutulmuş ve

ölçeklenebilirlik gözetilmiştir. Dolayısıyla yaprak yönlendiricilerinde bağlı oldukları

yerel şebekeler içerisindeki üyelerin listesi tutulmamakta, bunun yerine o yerel

şebekede en az bir üyenin olup olmadığının listesi tutulmaktadır. IGMP, ilk

oluşturulduğundan bu yana pek çok değişim geçirmiştir. Hali hazırda standartlaşmış

olan en son sürümü üçüncü sürümdür. Bu sürüm diğerlerine oranla en güvenli

sürümdür. Protokol tanımlamaları göz önüne alındığında sahte kontrol mesajlarının

yaratabileceği etkiler aşağıda sıralanmaktadır [117].

1. Sorgu mesajları: Sorgulayan yönlendiricinin kullandığı IP adresinden

daha düşük bir adres ile gönderilen sahte sorgu mesajları, sorgulama

görevlerinin sahte mesajı gönderen sisteme geçmesine sebep olacaktır. Bu

sistemin, aynı yerel şebekede bulunan diğer yönlendiricilerin “Başka bir

sorgulayan yönlendirici mevcut” zamanlayıcıları dolana kadar ayrılma

mesajlarını göz ardı etmesi sonucunda “grup üyelik aralığı” süresi

içerisinde grup üyesi kalmayan gruplar için çok hedefli iletim trafiği yerel

şebekeye iletilecektir.

2. Rapor mesajları: Yerel şebeke içerisindeki sahte bir rapor mesajı, ilgili

gruba dahil olan hiçbir üye bulunmamasına rağmen üyeler mevcutmuş

gibi algılanmaktadır. RFC 1112 içerisinde belirtilen model göz önüne

alındığında herhangi bir çok hedefli iletim grubuna üye olunması, özel bir

hak gerektirmediği için sahte paketlerin yerel şebeke içerisinden gelmesi

önemsizdir. Asıl sorun bu mesajların harici şebekelerden gelmesidir.

Birinci sürüme ait bir rapor alınması sonucu ilgili yönlendirici o grup için

“birinci sürüm üye mevcut” durumuna geçmektedir. Yönlendirici bu

189

durumdayken ayrılma mesajlarını görmezden gelmektedir. Böyle bir

durumda “grup üyelik aralığı” süresi dolmadan önce üyesi bulunmayan

gruplara trafik iletimi devam etmektedir.

3. Ayrılma mesajları: Gönderilen sahte ayrılma mesajları sorgulayan

rolündeki yönlendiricinin gruba yönelik sorgular göndermesine sebep

olmaktadır. Bu durum yerel şebeke içerisindeki bütün yönlendiricilere ek

yük getirmekte fakat trafiğin akışıyla ilgili herhangi bir etki

yaratmamaktadır.

Dağıtım ağacının güvenli hale getirilmesi için ilk olarak dağıtım ağacına erişimin

güvenli hale getirilmesi gerekmektedir. Bu iş, [118] içerisinde belirtilen yaprak

güvenliği sağlanarak yapılmaktadır. IGMP gibi üyelik yönetim protokolleri

içerisindeki kontrol mesajları için kimlik ve içerik doğrulamasının yanı sıra bu

mesajları gönderen sistemlerin mesaj içerisindeki gruba katılmaya yetkilerinin olup

olmadığının da kontrol edilmesi gerekmektedir. Daha önceden de belirtildiği gibi,

tasarım sırasında ölçeklenebilirliğin sağlanması için güvenlikten ödün verilmiştir.

Dağıtım ağacı ile ilgili yönlendirme protokolünün yaprak dallarda icra edilen üyelik

yönlendirme işlemleriyle hiçbir ilgisi bulunmamaktadır. IGMP ile ilgili bir güvenlik

tanımı yapılması, protokolün pek çok farklı işlevin ve görevin birleşme noktasında

olması dolayısıyla kolay değildir. IGMP güvenliği; kimliği belirli ve doğrulanmış

sistemlerin (veya kullanıcıların), yönlendirici durumları, bağlantı ve veri erişimi gibi

şebeke kaynaklarına erişiminin ilgili güvenli çok hedefli iletim uygulaması

tarafından belirtildiği ölçüde sağlanması olarak tanımlanmaktadır.

Güvenli bir grup üyelik yönetimi protokolünün aşağıda listelenmekte olan işlevleri

gerçekleştirebiliyor olması gerekmektedir.

1. Yetkilendirme: Gruba katılmak isteyen sistemin gruba katılmak için

yetkisinin olması gerekmektedir. Burada sistemin kaynak veya alıcı

olması fark etmemektedir.

2. Sistem kimlik tanımlaması ve doğrulaması: Dağıtım ağacına dahil olmak

isteyen bir sistemin, gerekli izni verecek olan varlığa kendini tanıtması

gerekmektedir. Çoğu durumda bu varlık, en yakındaki çok hedefli iletim

yönlendiricisi olmaktadır. Tanıtma ve kimlik doğrulama işlemleri

190

yönlendiricilerin yetkilendirilmiş bir erişim sunucusuna danışması

sayesinde gerçekleştirilebilmektedir.

3. Mesaj doğrulaması: Çok hedefli iletim yönlendiricileri ile sistemler

arasında değiş tokuş edilen kontrol mesajlarının içeriğinin

değiştirilmesine izin verilmemesi gerekmektedir. Bir başka deyişle, içerik

değişimlerinin fark edilebilir olması gerekmektedir. Mesaj

doğrulamasının yanı sıra mesajı yollayan sistem için kaynak doğrulaması

yapılması da gerekmektedir.

Grup üyelik yönetimi protokollerinin güvenliğiyle ilgili yapılan analiz sonucu

sistemlerin üyeliklerinin geçerliliğinin kontrol edilmesi sırasında yetkilendirme ve

güven sorunları çıkabileceği görülmektedir. İlk adım yönlendiricilerinin sistemlerin

üyeliklerinin kontrolü için danıştıkları varlıkların farklı bir organizasyonel yapı

içerisinde olması güven sorunlarının beraberinde getirmektedir. Organizasyonel

yapının dışına çıkıldığı zaman küresel bir kimlik doğrulama çatısına gerek

duyulmaktadır.

Gruba üye olmak isteyen sistemlerin yetkilendirilmesi için kullanılan yöntemlerden

bir tanesi çok hedefli iletim erişim “token”’idir [117]. Bu yöntemde şebeke sağlayıcı

ile içerik sağlayıcı arasındaki ortak nokta anahtar sunucusu (KD) olarak kabul

edilmektedir. İlgili şema şekil 6.31’da verilmektedir.

K

s

s

A

s

s

A

RP Randevu noktası

Y Çok hedefli iletim yönlendiricisi

A Alıcı

K Kaynak

KD Anahtar dağıtıcısı

Y

Y

KD

1

1

2

3

3

44

A Yetkilendirme varlığı

Şekil 6.31 – Çok hedefli iletim erişim “token”’i uygulaması

191

Erişim “token”’inin kullanılabilmesi için sistemlerin “üyelik kanıtı” edinmeleri

gerekmektedir [117]. Üyelik işlemleri bu kanıt olmadan yapılmamaktadır. Çoğu

zaman bu kanıt içerik sağlayıcıdan elde edilmekte ve şebeke sağlayıcısına

sunulmaktadır. Şekilde gösterildiği üzere herhangi bir sistem gruba üye olmak

istediğinde, ilk olarak KD ile iletişim kurmakta ve grup anahtarını elde etmektedir.

Bu anahtar ilerideki adımlarda üyelik kanıtı olarak sunulmak üzere saklanmaktadır.

KD, grup anahtarını dağıttığı sistemlerin bir listesini yetkilendirme varlıklarına [117,

119] dağıtmaktadır. Bu varlıklar çok hedefli iletim yönlendiricileri veya

yetkilendirme sunucuları (RADIUS) olabilmektedir. Bu listenin paylaşılması, şekilde

ikinci adım olarak çizilmiştir. Yetkilendirme varlığına ait rollerin nasıl

konumlandırıldığına göre bu liste, dağıtım ağacı içerisinde özel bir çok hedefli iletim

grubu kullanılarak dağıtılmaktadır [118, 120]. Bu adımın şekildeki numarası üçtür.

Sistemler edindikleri erişim “token”’ının en yakınlarındaki çok hedefli iletim

yönlendiricisine takdim etmektedir (Dört numaralı adım). Yönlendirici, erişim

“token”’inin doğruluğunu ve içerisindeki yetkilendirme bilgisini kontrol etmektedir.

Kontrollerin başarıya ulaşması durumunda IGMP üyelik işlemleri başlatılmaktadır.

Erişim “token”’i aşağıda sıralanmakta olan bilgileri taşımaktadır.

1. Grup kimlik bilgisi

2. Alıcı sistemin kimlik bilgileri

3. “Token” kimlik bilgisi

4. IGMP anahtarı

5. “Token”’a ilişkin zaman damgası

6. Erişim “token”’ının oluşturan varlığın kimlik bilgileri

7. Erişim “token”’ının oluşturan varlığın açık anahtarı

Sistemlerin birden fazla gruba üye olmak istediği durumlarda birden fazla erişim

“token”’ı edinmesi gerekmektedir. Listede yer alan “token” kimlik bilgisi 32 bitlik

rastlantısal bir sayıdır. IGMP anahtarı ise simetrik yapıdadır. “Token” listesinde

kullanılmak üzere bekleyen <Grup kimliği, “token” kimliği, IGMP anahtarı> üçlüleri

bir IGMP anahtarının sadece bir kere kullanılması gerektiği için kullanımdan sonra

listeden silinmektedir. Erişim “token”’larının dağıtımı, tek hedefli veya çok hedefli

olarak yapılmaktadır. Tek hedefli iletim seçildiği takdirde çok hedefli iletim

yönlendiricisi, KD ile bir güvenlik ilişkisi (SA) kurmaktadır. Daha sonra “token”

listesinin iletimi bu SA kullanılarak tamamlanmaktadır. İletimin, çok hedefli olarak

192

yapıldığı durumlarda “token” listesinin iletimi farklı bir kontrol mesajı olarak

düşünülmekte ve liste “bütün yönlendiriciler” çok hedefli iletim grubu hedef alınarak

yapılmaktadır. Şekil 6.31 içerisindeki dördüncü adımdaki IGMP mesajlaşması için

gereken kimlik doğrulaması, “token” içerisinde bulunan IGMP anahtarının yardımı

ile gerçekleştirilmektedir. (Örneğin IPSec AH ile şifrelenmiş bir özet işlevi kimlik

doğrulaması için kullanılabilmektedir.) Böyle bir mesajlaşma için ilk olarak sistem

ile yönlendirici arasında bir SA oluşturulması gerekmektedir. SA’nın oluşturulması

sırasında IGMP anahtarı kullanılmaktadır.

Kullanıcı veya sistemlerin katılım isteklerini yönlendiricilere yollamadan önce

yetkilendirme işlemleri sayesinde onay alması mantığı sadece erişim “token”’ı

tasarımında bulunmamaktadır. Gothic: Grup Erişim Kontrol Mimarisi ve Güvenli

Çok Hedefli İletim ve “Anycast” (Gothic: Group Access Control Arhitecture for

Secure Multicast and Anycast) [121] içerisinde, grup üyelerinin gruba dahil olması

sırasında erişim “token”’ına benzer bir yöntem kullanmaktadır. Gothic, grup erişim

kontrolünün yapılabilmesi için oluşturulmuş olan bir mimaridir. Tasarımın altında

yatan felsefe, yönlendiricilerdeki işlem gücü gereksinimlerinin ve mesajlaşmanın

minimumda tutularak ölçeklenebilirliğin ve güvenliğin birlikte sağlanmasıdır [121].

Grup erişim denetiminin yapılabilmesi için erişim kontrolü yeteneğine sahip grup

anahtar yönetim varlıkları (Group Access Control Aware GKM, GACA-GKM)

kullanılmaktadır. Gothic içerisindeki sistemler şekil 6.32’de gösterilmektedir.

GODAS

Grup

sahibi

EKS

Alıcı

Y

Yönlendirme

altyapısı

Grup üye

yetkilendirme

sistemi

Grup

politikası

yönetim

sistemi

Şekil 6.32 – Gothic içerisindeki sistemler

193

Şekilde gösterilmekte olan EKS, erişim kontrol sunucusunu ve GODAS ise, grup

sahibi belirleme ve yetkilendirme sunucusunu göstermektedir. Gothic, grup politikası

yönetim sistemi ve grup üyeleri yetkilendirme sistemi olmak üzere iki farklı

sistemden oluşmaktadır [121]. Gothic mimarisinde erişim kontrolü, kaynaklar için

sağlanmamakta, sadece alıcı sistemler için sağlanmaktadır. Grup üye yetkilendirme

sistemi içerisinde kullanılmak üzere açık anahtar altyapısının Gothic’ten bağımsız

olarak var olduğu var sayılmaktadır. Şebeke içerisindeki sistemlerin ve EKS

varlığının, kendilerine ait açık anahtar çiftleri ve sertifikaları bulunmaktadır.

Yönlendiriciler için böyle bir zorunluluk bulunmamaktadır. Açık anahtarlar K+ ile,

özel anahtarlar K- ile gösterilmektedir. K+A anahtarını taşıyan sertifika otoritesinin

sertifikası CERTK+A ile gösterilmektedir. Sayısal imza işlemlerinde bu imza

kullanılmaktadır. Yetkilendirme sistemine ait süreç şekil 6.33’de gösterilmektedir.

EKS

S Y

1. Yetkilendirme isteği

2. Kimlik doğrulama

3. Yetkilendirme

4. Yetkilendirme cevabı

5. Katılım isteği

6. Katılım cevabı

Şekil 6.33 – Gothic içerisindeki yetkilendirme süreci

Şekilde gösterilmekte olan süreçte ilk olarak S ile gösterilmekte olan sistem, gruba

katılma isteğini EKS ile gösterilmekte olan erişim kontrol sistemine iletmektedir. Bu

istek yetkilendirme isteğidir. Yetkilendirme isteği içerisinde grup kimliği ve sistemin

açık anahtar sertifikası bulunmaktadır. Bu mesaj sistemin özel anahtarı kullanılarak

şifrelenmektedir. Süreçle ilgili mesajlaşmalar aşağıda teker teker gösterilmektedir.

1. S EKS: Yİ = [Grup Kimliği, CERTK+S]K-S

EKS, bu adımda mesajı gönderen sistemin kimliğini kontrol etmektedir.

Kimlik doğrulandıktan sonra grup politikası kontrol edilmekte ve

sistemin, belirttiği gruba katılma hakkı olup olmadığına bakılmaktadır.

Cevabın olumlu veya olumsuz olduğu sisteme dördüncü adımda

gönderilmektedir. Cevabın olumlu olduğu durumlarda, yetkilendirme

cevabı yetenek cevabı olarak isimlendirilmektedir [121]. Yetenek

194

cevabının içerisinde sistemin IP adresi, seçkin adı (distinguished name),

çok hedefli iletim grup adresi, son kullanma tarihi, EKS’nin açık anahtar

sertifikası ve sayısal imzası bulunmaktadır.

2. EKS S: Yetenek = [IPS, DNS, Grup kimliği, Tsk, CERTK+EKS]K-EKS

Yetenek cevabı içerisinde bulunan sistemin IP adresi doğrulayıcı olarak

kullanılmaktadır. Sistem, yetenek cevabını aldıktan sonra bu cevabı

yönlendiriciye yollamaktadır. Buna katılım isteği denmektedir ve bu

mesaj IGMP rapor mesajı içerisinde yetenek cevabının yerleştirilmesiyle

elde edilmektedir.

3. S Y: Kİ = [Yetenek cevabı]

Yönlendirici bu mesajı aldığında, ilk olarak EKS’nin imzasını

doğrulamakta ve son kullanma zamanını kontrol etmektedir. Daha sonra

yetenek cevabının doğru sistemden gelip gelmediği kontrol edilmektedir.

Bu işlem, sisteme doğrulama mesajı gönderilip cevabın ilk gelen

mesajdaki kimlik ile karşılaştırılmasıyla veya sistemin IP adresinin doğru

arabağdaşımdan gelip gelmediğinin kontrol edilmesi sayesinde

yapılmaktadır. Bu işlemler bittikten sonra sisteme katılım isteğinin

olumlu veya olumsuz olduğuna dair bir cevap gönderilmektedir.

4. Y S: KC = [Durum]

Erişim kontrolü uygulanmayan bir grup ile ilgili bir katılım isteği geldiğinde

yönlendirici EKS varlığını sorgulamakta ve grup ile ilgili erişim kontrolü bilgilerini

almaktadır. Katılım işlemlerine, EKS içerisindeki kayıtlardan, grupla ilgili herhangi

bir erişim kontrolü uygulanmadığı doğrulandığı takdirde başlanmaktadır.

Çok hedefli iletim yerel şebeke altyapısı ile ilgili olarak yapılan analizde, sistemlerin,

erişim “token”’ları kullanılarak dağıtım ağacına dahil edilmesi sonrasında değiş

tokuş edilen IGMP mesajlarının güvenliğinin önem kazandığı görülmüştür.

Güvenliğin sağlanması için IGMP mesaj doğrulamasının uygulanması

gerekmektedir. Böylelikle sahte mesajların önüne geçilmektedir. Mesaj

doğrulamasının sağlanması için en güvenilir yol, sistemler ve yönlendiriciler

arasında açık anahtarların kullanılmasıdır. Açık anahtarların kullanımı, mesajlaşma

sayısı ve yönlendiricilerdeki işlem gücü göz önüne alındığında çoğu zaman pratik

olmadığı anlaşılmıştır. Açık anahtarlar yerine genellikle simetrik anahtarlı MAC

işlevlerinin kullanımına gidilmelidir. Bu yöntemde sistem ve yönlendirici arasında

195

sadece sisteme özgü veya gruba özgü simetrik bir anahtar kullanılarak mesajın şifreli

özeti hesaplanmaktadır. Bu özet, mesaj içerisine eklenmekte ve böylece mesaj

doğrulaması gerçekleştirilmektedir. [118] dokümanı buna bir örnek olarak verilebilir.

Erişim “token”’ı kullanılarak yetkilendirme ve IGMP mesajlarının doğrulanması ile

ilgili çeşitli güvenlik açıkları bulunmaktadır. Açık anahtar teknolojileri kullanıldığı

durumlarda, yönlendiriciler içerisine o yönlendiriciye ait olan açık anahtar çifti ve

KD varlığının sayısal sertifikası yerleştirilmelidir. Yönlendiricilerin, açık anahtar

teknolojisine dayalı sertifika denetimi yapması gerekmektedir. Alternatif olarak,

bütün yönlendiricilere, KD ile iletişimlerinde kullanılmak üzere simetrik bir anahtar

verilebilmektedir. Böylece grup kimlik doğrulaması MAC veya HMAC işlevleri

kullanılarak yapılmaktadır. Yapılan analiz sonucu, iletişimin türüyle ilgili bir tasarım

açığı görülmüştür. IGMP mesajları, yerel şebeke içerisinde çoktan çoğa (many-to-

many) yapılmakta olduğu için, IPSec (AH veya ESP) kullanımı mümkün

olmamaktadır. Bunun nedeni IPSec protokolünün kullanımının dengi dengine

olmasıdır. Doğrulamanın hangi katmanda gerçekleştirileceği bir başka sorundur.

Açık anahtar yöntemlerine dayalı sayısal sertifikaların kullanıldığı ortamlarda,

imzalama işlevleri IP paket seviyesi yerine IGMP seviyesinde yapılmalıdır.

Doğrulamanın, simetrik anahtar ve MAC işlevleri yardımı ile yapıldığı durumlarda,

MAC doğrulaması her iki katmanda da yapılabilmektedir. Ayrıca erişim “token”’ı

sistemler tarafından yönlendiricilere değişik zamanlarda sunulabildiği için IPSec

seviyesinde doğrulama yapılamamaktadır. Bunun nedeni IPSec içerisinde kullanılan

tekrar gönderim sezme mekanizmalarıdır. Aynı “token”’ın birkaç defa sunulması

IPSec tekrar gönderim kurallarına takılmaktadır. KD varlığı tarafından oluşturulan

erişim “token”’larında, “token”’ın yaşam süresi mutlaka belirtilmelidir. Yaşam

süresi, ilgili çok hedefli grubun yaşam süresi göz önüne alınarak hesaplanmalıdır.

Erişim “token”’ları içerisinde bu tür bilgilerin eklenmesi, “token”’ların yönetimini

zorlaştırmakta ve “token” yönetim altyapısına duyulan ihtiyacı beraberinde

getirmektedir.

6.3.2. Çok Hedefli Ġletim Yönlendirme Altyapısı Güvenliği

Her bir yönlendirme protokolünün kendine has özellikleri bulunmaktadır.

Dolayısıyla her bir protokol için özel güvenlik önlemlerinin alınması gerekmektedir.

Ancak genel olarak bakıldığında yönlendirme ile çeşitli ortak güvenlik

196

gereksinimleri ortaya çıkmaktadır. Bununla birlikte çok hedefli iletim protokolleri,

işleyişlerinde tek hedefli iletim protokollerine ihtiyaç duymaktadır. RFP ve kaynak

yönlendirmesine ilişkin bilgiler buna örnek olarak gösterilebilir. Yapılan analizde,

tek hedefli iletim yönlendirme protokollerine duyulan ihtiyacın dikkatli ele alınması

gerektiği görülmektedir. Zira bu protokollerin içerisinde meydana gelebilecek

herhangi bir açık çok hedefli iletim yönlendirme protokollerini doğrudan

etkilemektedir. Ortak güvenlik gereksinimleri; kontrol mesajlarının korunması,

yönlendirme bilgisinin oluşturulduğu yer ve kaynak için kimlik doğrulaması

yapılması, yönlendiriciler seviyesinde anahtarların verimli bir şekilde kullanılması,

beklenmedik (anormal) yönlendirme davranışlarının fark edilmesi ve güvenlik

ihlallerinin kontrol altına alınmasıdır.

Kontrol mesajlarının korunması genel olarak; grup veya kaynak temelinde kimlik

doğrulaması yapılması, yol üzerinde mesajın değiştirilememesi ve mesajların tekrar

gönderilememesi anlamına gelmektedir. Mesaj, yol üzerinde değiştirildiğinde, bunun

uç noktalar tarafından fark edilebilmesi gerekmektedir. Simetrik anahtarlamanın

kullanıldığı durumlarda grup kimlik doğrulaması yapılmaktadır. Kaynak kimlik

doğrulaması, sadece asimetrik anahtarlamanın kullanıldığı durumlarda

yapılabilmektedir. Yönlendirme bilgisinin pek çok etki alanı veya otonom sistem

içerisinde propagasyonu söz konusu olduğunda, rotaların oluşturulduğu etki alanı

ilgili kimlik doğrulaması yapılması zorunludur. Bunun nedeni bir otonom sistemin

bir rotayı başka bir otonom sisteme iletmesi sırasında, bu rotanın nerede ve nasıl

üretildiğini bilmesi zorunluluğudur. Bu zorunluluk, etki alanları arası çok hedefli

iletim yönlendirmesinde ortaya çıkmaktadır. Buna örnek olarak tek hedefli iletimde

BGP, çok hedefli iletimde MSDP ve BGMP verilebilir. Etki alanı içerisindeki

yönlendirme altyapısı (dahili yönlendirme) söz konusu olduğunda rotayı oluşturan

varlıkla ilgili kimlik doğrulaması yapılması gerekmektedir. Etki alanları içerisinde

genel olarak belirli varlıklar, diğer bütün yönlendiricilere mesaj yollamaktadır. Bu

mesajlar yayın şeklinde veya çok hedefli olarak yapılmaktadır. Paylaşımlı grup

anahtarının kullanımı, kötü niyetli kişilerin eline geçmiş bir yönlendirici grup

anahtarına sahip olduğunda, sahte mesajlar iletebileceği için tercih edilmemelidir.

Böyle bir durumda alıcı yönlendiricilerin eline geçen mesaj, kimlik doğrulaması

testlerinden başarıyla geçmektedir. Yapılan analizde, bu tür saldırıların bertaraf

edilebilmesi için grup anahtarlaması (simetrik) yerine açık anahtar temelli sayısal

197

sertifikalar kullanılmasının daha doğru olacağı görülmektedir. Yönlendiriciler

arasındaki kontrol mesajlaşmaları, kriptolojik yöntemlerle korunacağı için bu

yöntemlere ilişkin anahtarlama materyallerinin verimli bir şekilde yönetimi,

dağıtılması ve korunması gerekmektedir. Anahtarlama materyallerinin yönetimi iki

nedenden dolayı gereklidir. Bu nedenlerden ilki, kontrolü kötü niyetli kişilerin eline

geçmiş bir yönlendiricinin geçersiz kılınarak bu güvenlik açığından etkilenen bütün

yönlendiricilerin anahtarlarının değiştirilmesi; ikincisi ise kriptografik anahtarların

belirli bir yaşam süresi olmasıdır. Kontrol mesajlaşmalarının sayısı ve hacmi diğer

mesajlaşmalara göre çok düşük olsa bile, kriptoanaliz için yeterli koşullar

oluşabilmektedir. Buna ek olarak açık anahtarlamanın kullanıldığı durumlarda

yönlendiricilerin sayısal sertifikaları işleyebilecek işlem güçlerinin olması

gerekmektedir. Her bir yönlendiricinin kendine has bir sertifikası olacağından dolayı

bu sertifikaların da yönetilmesi ve başlangıç safhasında kurulması gerekmektedir.

Ayrıca bu tür durumlarda sertifika otoritesinin seçimi (örneğin etki alanı içerisinden

veya etki alanları arası) önem kazanmaktadır.

Yönlendirme altyapısına ilişkin beklenmedik davranışlar genel olarak sistem

yöneticileri tarafından fark edilebilmekte fakat bu yeterli olmamaktadır.

Yönlendirme anormalliklerine ilişkin otomatik önlemlerin alınması gerekmektedir.

Bu önlemler sistem yöneticilerine otomatik bildirimlerden, trafik hacminin

değişimine göre çeşitli aksiyonların alındığı karmaşık işlevler olabilmektedir. Çok

hedefli iletim söz konusu olduğunda, aynı alt şebekeye ilişkin birbirini tekrarlayan

katılım ve budama işlemleri yönlendirme anormalliğine bir örnek olarak

gösterilebilir. Bir başka saldırı türü ise D sınıfı adreslerin tamamına teker teker paket

yollanmasıdır. Oluşan güvenlik açıklarının oluştuğu etki alanı dışına taşmaması ve o

etki alanı içerisinde mümkün olduğu kadar izole edilerek minimum hasar vermesi

istenmektedir.

6.3.2.1 PIM-SIM Protokolü Güvenliği

Günümüzde Internet üzerinde en yaygın kullanım alanı bulmuş olan çok hedefli

iletim yönlendirme protokolü Protokolden Bağımsı Çok Hedefli İletim - Seyrek Mod

spesifikasyonudur (PIM-SM). IETF içerisindeki PIM çalışma grubu, protokol ile

ilgili güvenlik çalışmalarını ilk olarak 1999’da başlatmıştır [122]. Daha sonra PIM-

SM spesifikasyonu [32] genişletilerek güvenlik ile ilgili bilgiler eklenmiştir.

198

Güvenlik çalışmaları, 2000 yılında PIM protokolü için bir anahtar yönetim protokolü

yazılması ile devam etmiştir [123].

PIM-SM protokolünde kullanılmakta olan mesajlar sadece bir adım ötedeki

yönlendiricilere ulaşan ve mümkün olduğuca çok hedefli olarak iletilmeye çalışılan

yerel bağlantı mesajları veya birden fazla adım ötedeki varlıklara ulaşan tek hedefli

mesajlar olarak sınıflandırılabilmektedir. Yerel bağlantı mesajları katılım, budama,

iddia ve HELLO protokolü mesajlarıdır. Tek hedefli mesajlar ise kaydolma ve

kaydolmayı durdurma mesajlarıdır. Bu mesajların sahtelerinin üretilerek

gönderilmesi güvenlik açıklarına yol açmaktadır. Sahte katılım ve budama mesajları

çok hedefli iletim trafiğinin izinli hiçbir üye olmayan bağlantılara iletilmesine sebep,

olmaktadır. Böylece bandgenişliği boşa harcanmaktadır. Sahte ayrılma mesajlarının

yarattığı tehlikeler önemsizdir. Bunun sebebi, aynı şebekede bulunan ve ayrılma

isteğini duyan diğer yönlendiricilerin (sorumlu oldukları alt şebekelerde izinli üyeler

olduğu için), ayrılma isteğini geçersiz kılmak için katılım mesajları göndermesidir.

HELLO mesajlarının sahtelerinin, gönderilmesi yetkisiz yönlendiricilerin DR olarak

seçilmesine sebep olmakta ve böylece çok hedefli iletim ile ilgili yönlendirme

sorumluluğu bu yönlendiriciye geçmektedir. Kaydolma mesajları ile ilgili

sorumluluk DR varlığında olduğu için yerel sistemlerin alıcı veya kaynak olabilmesi

de bu yönlendiricinin kontrolüne geçmektedir. Dolayısıyla çok hedefli iletim trafiği

sekteye uğramaktadır. İddia mesajlarının sahtelerinin gönderilmesi DR varlığının

trafiği iletmesini durdurabilmektedir. Böylece bu varlığa bağlı yerel şebekeler ve

daha da önemlisi bu varlığın alt dallarında bulunan sistemler çok hedefli iletim

trafiğini alamamaktadır. Kaydolma mesajlarının sahtelerinin üretilmesi sayesinde

dağıtım ağacı içerisinde gelişi güzel trafik eklenebilmektedir. Kaydolma durdurma

mesajı ise DR varlığının paketleri RP varlığına yollamasına engel olmakta ve

böylece yerel şebeke içerisindeki kaynak, çok hedefli iletim ağacına trafik

gönderememektedir.

Yerel bağlantı kontrol mesajları söz konusu olduğunda, güvenlik ihlalleri çoğu

zaman bir adım ötedeki yönlendiricileri etkilediği için zarar gören varlıkların sayısı

fazla olmamaktadır. Çok hedefli iletim söz konusu olduğunda birden fazla adım

öteye giden mesajlara ilişkin güvenlik ihlalleri çok büyük sonuçlar doğurmaktadır.

PIM-SM spesifikasyonunda bir alt şebekede oluşturulup da birkaç adım ötedeki

başka bir alt şebekeye gönderilen üç farklı mesaj türü bulunmaktadır [122]. Bu

199

mesajlar; grup – RP eşlemeleri için kullanılan önyükleme mesajları, aday RP

anonsları ve DR varlıkları tarafından RP varlıklarına gönderilen kaydolma

mesajlarıdır. Bu üç farklı mesaj türü, mesajın kaynağı ile vardığı nokta arasında yol

alırken hiçbir varlık tarafından değiştirilmemektedir. Önyükleme mesajları, etki alanı

içerisinde seçilmiş olan önyükleme yönlendiricisi tarafından bütün PIM

yönlendiricilerine gönderilmektedir. Bu mesajlar içerisinde, hangi grupların hangi

RP varlığından hizmet alacakları bilgisi bulunmaktadır. Yetkili olmayan bir

yönlendiriciden bütün PIM yönlendiricilerine gönderilen önyükleme mesajları çok

hedefli iletim trafiğini etkileyeceğinden güvenlik tehlikesi oluşturmaktadır.

Önyükleme prosedürünün gerektiği gibi çalışabilmesi için, RP aday

yönlendiricilerinin önyükleme yönlendiricisine gönderdiği mesajların güvenliğinin

sağlanması gerekmektedir. Aksi halde bu mesajların yol üzerinde değişmesi veya

görevli olmayan bir yönlendirici tarafından sahte bir mesaj üretilmesi etki alanı

içerisindeki yönlendirme davranışını etkilemekte ve böylece güvenlik açıkları

oluşmaktadır. Yetkisi olmayan kaynaklar tarafından tetiklenen ve DR varlıklarının

RP varlığına kaydolma mesajları göndermesine yol açan durumlar, çok hedefli iletim

gruplarına sahte mesajlar iletilmesine yol açabilmektedir. Bu durum farklı bir

güvenlik tehlikesi oluşturmaktadır.

Bu tür güvenlik tehlikelerinden korunmanın bir yolu, bütün PIM kontrol mesajlarının

doğrulanmasıdır [122]. Doğrulama için bütün kontrol mesajlarının IPSec doğrulama

başlığı (AH) taşıması gerekmektedir. Mesajların doğrulanabilmesi için iki farklı veri

dönüşüm metodu belirlenmiştir [122]. Bu metotlar, HMAC-MD5-96 ve HMAC-

SHA-1-96 olarak isimlendirilmektedir. Her iki metot için de anahtar dağıtımı el ile

yapılmaktadır. Güvenliğin sağlanabilmesi için iki farklı seçenek sunulmaktadır. İlk

seçenek “eşit fırsat” metodu, ikinci seçenek ise “farklı yetenekler” metodudur [122].

Eşit fırsat metodunda, bütün yönlendiricilere, rollerine bakılmaksızın tek bir anahtar

dağıtılmaktadır. Bütün kontrol mesajlaşması bu anahtar kullanılarak

şifrelenmektedir. Bu metot ile güvenlik, sadece PIM yönlendiricileri ve diğer

varlıklar arasında sağlanmaktadır. Bir başka deyişle, anahtara sahip olan bir

yönlendirici yaptığı doğrulama testlerinde, mesajın diğer PIM yönlendiricilerinden

gelip gelmediğini tespit edebilmektedir. Yapılan analiz sonucu, PIM

yönlendiricilerinden herhangi birinin kötü niyetli kişiler tarafından ele geçirilmesinin

güvenlik altyapısını tamamen bozduğu görülmektedir. Önyükleme yönlendiricileri

200

için ek güvenlik önlemlerine ihtiyaç duyulmaktadır. Bunun nedeni, önyükleme

yönlendiricileri tarafından bütün etki alanına gönderilen grup – RP eşleşmelerini

içeren mesajlardır. Aynı durum aday RP mesajları için de geçerlidir. Bu varlıkların

korunması için farklı yetenekler metodunun kullanılması gerekmektedir [122]. Bu

metotta eşit fırsat anahtarının kullanımına devam edilmektedir. Çoğu PIM kontrol

mesajı bu anahtar ile şifrelenerek gönderilmektedir. Fakat aday BSR ve RP varlıkları

eşit fırsat anahtarına ek olarak iki ilave anahtar daha kullanılmaktadır. Bu anahtarlar

önyükleme ve aday RP anonslarının korunması için kullanılmaktadır. Bütün BSR

varlıkları, tek bir RSA anahtar çiftine sahiptir. Bu çift içerisindeki anahtarlar, özel

BSR anahtarı ve açık BSR anahtarları olarak isimlendirilmektedir. Özel anahtar,

önyükleme mesajının tamamını şifrelemek için kullanılmaktadır. Açık anahtar, bu

mesajın ulaştığı bütün yönlendiriciler tarafından bilinmekte ve mesaj doğruluk

kontrolleri için kullanılmaktadır. Böylece mesajın gerçekten aday BSR tarafından

gönderilip gönderilmediği anlaşılmaktadır. BSR anahtar çiftine ek olarak “RP

anahtarı” olarak isimlendirilen simetrik bir anahtar daha mevcuttur. Bu anahtar,

sadece BSR ve RP varlıkları tarafından bilinmektedir. Aday RP anonsları

mesajlarında eşit şans anahtarı yerine bu anahtar kullanılmaktadır. Farklı yetenekler

metodunun, eşit şans metodundan daha esnek olduğu görülmektedir. Bu metot ile

sadece yetkilendirilen aday BSR varlıkları, BSR rolünü üstlenebilmekte ve sadece

yetkilendirilen varlıklar BSR varlığına RP adaylığını bildirebilmektedir. Böylelikle

çok geniş PIM etki alanları desteklenebilmektedir [122]. Güvenliğin bu şekilde

sağlanabilmesi için PIM mesaj başlıkları, IPSec AH doğrulama başlığının arkasına

eklenmektedir. IP başlığındaki protokol alanında 51 bulunmaktadır. Bir PIM paketi

içerisinde AH başlığının eklenmesi şekil 6.34’de, AH bölümünün biçimi (IPSec AH

spesifikasyonundan alınmıştır.) ise şekil 6.35’te gösterilmektedir.

AH başlığıIP başlığı PIM başlığı PIM verisi

Şekil 6.34 – PIM mesajlarında doğrulamanın kullanımı, AH başlık yapısı

201

0 1 2 3 4 5 6 7 8 0 29 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

Veri uzunluğuBir sonraki başlık

Güvenlik parametre indeksi (SPI)

Sıra numarası alanı

0 1 2 3

Ayrılmış

Doğrulama verisi alanı (değişken uzunlukta)

Şekil 6.35 – AH başlık yapısı

Veri uzunluğu (payload length) bölümünün değeri HMAC-MD5-96 veya HMAC-

SHA-1-96 veri dönüşümleri kullanıldığında sabittir ve dörttür. RSA anahtarlarının

kullanıldığı durumlarda bu alan değişkendir. Farklı yetenek metodunun kullanıldığı

durumlarda SPI alanına ihtiyaç duyulmaktadır. Bunun sebebi farklı güvenlik

ilişkilerinin (SA) tanımlanmasına ihtiyaç duyulmasıdır. Doğrulama verisi alanında

ise PIM mesaj özeti bulunmaktadır. Bir paket oluşturulması sırasında özet veya RSA

imzası hazırlanırken doğrulama verisi alanı sıfırlanmaktadır. Alınan bir paketin

doğruluğunun denetlenmesi sırasında ise bu alan sıfırlanmadan önce saklanmaktadır

[122].

Yukarıda belirtilmekte olan anahtarların kullanımı sayesinde kontrol mesajları

şifrelenebilmekte ve dolayısıyla yönlendirme güvenliği sağlanmaktadır. Güvenliğin

her zaman aynı seviyede tutulabilmesi için kullanılan anahtarların düzenli bir şekilde

değiştirilmesi gerekmektedir. PIM protokolünün güvenli hale getirilmesi için

kullanılan anahtarların dağıtımı ve değiştirilmesi gibi anahtar yönetimi konuları PIM

Basit Anahtar Yönetimi (Simple Key Management Protocol, SKMP-PIM)

protokolünde [123] ele alınmaktadır. Daha önce yapılan çalışmada [67], anahtarların

kullanımı anlatılmış fakat nasıl dağıtılacağı veya değiştirileceği tanımlanmamıştır.

SKMP-PIM protokolünde felsefe, PIM protokolünü güvenli hale getirmek için

kullanılan anahtarların yönetiminin sağlanmasıdır. Bunun için ilave anahtarlar

kullanılmaktadır. Bu anahtarların ve diğer anahtarların başlangıç safhasında dağıtımı

ve tekrar dağıtımı Etki Alanı Anahtar Dağıtım (Domain Key Distributor, DKD)

varlığına verilmiştir. Amaç, [122] içerisinde tanımlanan anahtarların korunması

olduğu için bu anahtarlar birincil anahtarlar olarak isimlendirilmektedir [123]. Eşit

fırsat anahtarı Kef, BSR varlığına ait olan anahtar çiftinden açık anahtar PKbsr, gizli

olan anahtar SKbsr, bütün RP ve BSR varlıkları tarafından paylaşılan RP anahtarı ise

Krp notasyonları ile gösterilmektedir. SKMP-PIM içerisinde tanımlanan anahtarlar

202

ise anahtar yönetim anahtarları olarak isimlendirilmektedir [123]. Bu kategoriye

giren anahtarların kullanım amacı birincil anahtarların korunmasıdır. Bu sebeple

anahtar yönetim anahtarları nadir olarak değiştirilmektedir. Anahtar yönetim

anahtarları aşağıda sıralanmaktadır.

1. Etki alanı genelinde sorumluluk sahibi olan DKD varlığına PKdkd ve

SKdkd olarak isimlendirilen RSA anahtar çifti verilmektedir.

2. RSA anahtar çiftinden açık olanı, RP adayları kümesini oluşturan bütün

yönlendiricilere ve BSR varlığına verilmektedir. Bu anahtar PKrpbsr olarak

isimlendirilmektedir. Bu anahtar çiftine ait gizli anahtar ise sadece DKD

varlığına verilmektedir. Bu anahtar ise SKrpbsr olarak isimlendirilmektedir.

Bu anahtarlar sadece tek bir PIM etki alanı içerisinde kullanılmak üzere

tanımlanmaktadır. Dolayısıyla yapılan doğrulama sadece o etki alanı içerisinde

geçerlidir ve veri gizliliği, verinin gizli anahtarlar kullanılarak şifrelenmesi sayesinde

sağlanmaktadır [123]. Buna ek olarak SKbsr ve PKbsr olarak isimlendirilen anahtar

çiftleri, anahtar yönetimi için de kullanılmaktadır. Anahtar yönetiminin

başlatılabilmesi için ilk safhada anahtarların dağıtılması gerekmektedir. İlk dağıtım

elle veya dinamik olarak yapılabilmektedir. Elle yapılandırma üç adımdan

oluşmaktadır. İlk adımda PKdkd anahtarı bütün PIM yönlendiricilerine

yerleştirilmektedir. Bu yönlendiricilere RP ve BSR varlıkları da dahildir. İkinci

adımda PKbsr ve SKbsr anahtar çifti BSR varlığına yerleştirilmektedir. Üçüncü ve son

adımda PKrpbsr anahtarı BSR ve RP varlıklarına yerleştirilmektedir. İlk safha için

izlenebilecek diğer bir yol ise dinamik yapılandırmadır. Dinamik yapılandırmanın

uygulanabilmesi için her bir PIM yönlendiricisinin bir açık anahtar çiftine (Yi

yönlendiricisi için PKYi ve SKYi) sahip olması gerekmektedir. Bu anahtar çiftleri,

yönlendiricilere güvenli bir şekilde yüklenmelidir. Yönlendiriciler bu anahtar

çiftlerini kullanarak DKD ile bir güvenlik ilişkisi (SA) kurmakta ve güvenli bir kanal

oluşturmaktadır. Güvenli kanal kurulduktan sonra BSR varlığı PKbsr ve SKbsr anahtar

çiftini üreterek DKD varlığına yükleyebilmekte veya üretim DKD varlığı tarafından

yapılarak BSR varlığına gönderilmektedir. İkinci adımda BSR varlığı DKD varlığı

tarafından üretilen PKrpbsr anahtarını indirmektedir. Üçüncü adımda aynı anahtar

bütün RP varlıkları tarafından indirilmektedir. Dördüncü ve son adımda bütün PIM

yönlendiricileri, DKD varlığı tarafından üretilen PKdkd anahtarını kendi güvenli

kanallarını kullanarak indirmektedir. Bu sayede elle veya dinamik olarak bütün

203

anahtar yönetim anahtarları dağıtılmış olmaktadır. Bir sonraki safhada birincil

anahtarlar dağıtılmaktadır. İlk safhanın bitiminde, BSR varlığının elinde birincil

anahtarlardan sadece PKbsr ve SKbsr anahtarları bulunmaktadır. PKbsr anahtarının

bütün PIM yönlendiricilerine dağıtılması için ilk olarak bu anahtar, DKD tarafından

(ve SKdkd anahtarı kullanılarak) imzalanmaktadır. İmzalanan mesaj, çok hedefli veya

tek hedefli olarak bütün PIM yönlendiricilerine iletilmektedir. PIM yönlendiricileri,

SKdkd kullanılarak imzalanmış mesajı, sadece PKdkd anahtarı kullanarak

doğrulayabilmektedir. DKD varlığı, isteğe bağlı olarak bu mesajı imzalamak yerine

gizliliğin sağlanması için aynı anahtarı kullanarak şifreleyebilmektedir. Bir sonraki

adımda Krp anahtarı iletilmektedir. DKD varlığı, bu anahtarı SKrpbsr anahtarını

kullanarak şifrelemektedir. Daha sonra bu mesaj RP ve BSR varlıklarına

gönderilmektedir. İletim bütün-PIM-yönlendiricileri çok hedefli grubu kullanılarak

yapılabilmektedir. Mesajın deşifre edilmesi için gerekli olan PKrpbsr anahtarı sadece

RP ve BSR varlıklarında olduğu için güvenlik sağlanmaktadır. Eşit fırsat anahtarı

olan Kef’nin dağıtımında ise DKD varlığı bu anahtarı SKdkd kullanarak şifrelemekte

ve bütün PIM yönlendiricilerine tek hedefli olarak veya çok hedefli olarak

dağıtmaktadır.

PIM protokolünde simetrik ve açık anahtarların birlikte kullanımı tekrar anahtarlama

stratejilerini farklılaştırmaktadır. Tekrar anahtarlama safhaları anlatılırken eski

anahtarlara 1 rakamı, yeni anahtara 2 rakamı eklenmiştir. Tekrar anahtarlama

işlemlerinde ilk safhada BSR anahtarları ele alınmaktadır. Burada anahtar çiftinin

kimin tarafından tekrar üretileceği önem kazanmaktadır. PKbsr2 ve SKbsr2 anahtarları

DKD varlığı tarafından üretildiğinde;

1. DKD varlığı, PKbsr2 ve SKbsr2 anahtarlarını SKdkd anahtarını kullanarak

sayısal olarak imzalamaktadır. Burada imzalama yerine gizliliğin

sağlanması için şifreleme yoluna da gidilebilmektedir. İmzalama sonunda

ortaya çıkan şifrelenmiş metin, Cbsr olarak isimlendirilmektedir.

2. DKD varlığı Cbsr metnini PKbsr1 anahtarı ile şifrelemekte ve CCbsr şifreli

metni oluşturulmaktadır.

Daha sonra CCbsr mesajı BSR varlığına yollanmaktadır. BSR varlığı, SKbsr1

anahtarını elinde bulundurduğu için mesajı deşifre edebilecektir. BSR varlığına ait

204

anahtar çiftinin BSR tarafından tekrar üretildiği durumda PKbsr2 anahtarının DKD

varlığına iletilmesi gerekmektedir. İletim ile ilgili adımlar aşağıda belirtilmektedir.

1. PKbsr2 anahtarı, BSR tarafından şifrelenmektedir. Bu işlem PKbsr1 anahtarı

kullanılarak yapılmaktadır. Ortaya çıkan metne Cdkd denmektedir.

2. BSR varlığı, Cdkd metnini PKdkd anahtarını kullanarak şifrelemekte ve

CCdkd metnini oluşturmaktadır.

Daha sonra BSR varlığı CCdkd mesajını DKD varlığına iletmektedir. SKdkd anahtarı

sadece DKD varlığında olduğu için, PKbsr2 anahtarını sadece DKD varlığı elde

etmektedir. BSR anahtarlarının yenilenmesi bir önceki BSR anahtarlarına bağlıdır.

Böyle bir stratejinin istenmediği durumlarda, DKD ve BSR arasında kullanılan SA

kullanılarak farklı bir güvenli kanal oluşturulabilmekte ve anahtar yenilemeleri bu

kanal üzerinden gerçekleştirilebilmektedir [69]. Böyle bir yöntem kullanıldığında

anahtar çiftinin hangi varlık tarafından üretilip dağıtıldığının bir önemi yoktur. BSR

ve RP varlıkları arasında paylaşılan Krp anahtarının tekrar dağıtımı daha önce

anlatıldığı gibi SKrpbsr anahtarı sayesinde yapılabilmektedir. Buna ek olarak yeni Krp

anahtarı (Krp2) bir önceki anahtar (Krp1) kullanılarak da dağıtılabilmektedir. Bunun

için izlenmesi gereken adımlar aşağıda sıralanmaktadır.

1. Krp2 anahtarı, DKD tarafından şifrelenmekte veya sayısal olarak

imzalanmaktadır. Bu adımda SKdkd kullanılmakta ve ortaya çıkan metne Crp

denmektedir.

2. Crp metni Krp1 anahtarı kullanılarak DKD varlığı tarafından şifrelenmektedir

ve CCrp metni elde edilmektedir.

Daha sonra bu metin, DKD tarafından bütün RP ve BSR varlıklarına

gönderilmektedir. Gönderim tek hedefli veya çok hedefli olarak yapılabilmektedir.

Krp1 anahtarı sadece BSR ve RP varlıklarında olduğu için gönderilen mesaj sadece bu

varlıklar tarafından deşifre edilebilecektir. Kef olarak isimlendirilen eşit fırsat

anahtarının dağıtımı için bir önceki anahtarın kullanılması fikri Kef anahtarının bütün

PIM yönlendiricileri tarafından bilindiği göz önüne alındığında mantıksızdır.

205

DR

RP

Y

DR

BSR

DKD

RP

(Aday)

PKdkd, SKdkd

PKrpbsr, SKrpbsr

PKdkd PKrpbsr

PKdkd PKrpbsr

PKdkd

PKdkdPKdkd

PKdkd PKrpbsr

AK

Kaydo

lma

mes

ajla

Ek kısa yol ağacı

Dağıtım

ağacı

Şekil 6.34 – SKMP-PIM protokolünde kullanılan anahtar yönetim anahtarları

Bunun yerine ilk safhada Kef için kullanılan dağıtım yöntemi kullanılmaktadır. Şekil

6.36’te SKMP-PIM protokolüne ilişkin anahtarlar ve anahtarın dağıtıldığı varlıklar

gösterilmektedir.

Genişletilmiş PIM-SM spesifikasyonu ve [122] içerisinde belirtilen IPSec AH

kullanımında yerel bağlantı mesajları için tekrar gönderim korumasının sorun

yaratabileceği görülmektedir. Yerel bağlantı mesajlarının tamamı için tek bir SA

kullanılmaktadır. Bu tür mesajlar çok hedefli olarak iletildiği için tek hedefli iletim

için oluşturulmuş olan SA yapısı yeterli olmayacaktır. Çok hedefli iletimde hedef

adresi sabit kalmakta fakat kaynak adresi değişebilmektedir. Dolayısıyla farklı

kaynaklardan gelen farklı mesajlar için tek bir iletim penceresine dayanarak tekrar

gönderim kontrolü yapılması doğru değildir. Her bir yönlendiricide, farklı iletim

pencereleri tutulmakta fakat gönderilen mesajlar bütün üyeler tarafından

alınmaktadır. Böylece belirli yönlendiricilerde bazı izinli paketler tekrar gönderim

ihlali dolayısıyla atılacaktır. Bir diğer sorun ise ön yükleme mesajlarıyla ilgili sayısal

imza kullanımıdır. Ön yükleme mesajlarına ilişkin kimlik doğrulama

mekanizmalarının IPSec seviyesi yerine PIM seviyesinde yapılması gerekmektedir.

Bunun sebebi, önyükleme mesajlarının yönlendiriciden yönlendiriciye aktarılırken

tekrar yaratılmasıdır. IPSec seviyesinde yapılan kaynak kontrolü dengi dengine

haberleşmeler için geçerlidir. Ancak burada mesaj adımdan adıma yol alırken imha

edilmekte ve tekrar oluşturulmaktadır. Böyle bir yapıda IPSec seviyesindeki kaynak

doğrulama bilgisi mesaj tekrar oluşturulurken silinip yeniden yaratılmaktadır. Sayısal

imzanın PIM seviyesine çekilmesi sayesinde, imza PIM bilgisi olarak

206

taşınabilmektedir. Böylece BSR varlığına ilişkin kimlik doğrulama işlemleri, mesajın

adımdan adıma değişmesinden etkilenmeden yapılabilmektedir. PIM

spesifikasyonunda, halen güvenlik açıkları bulunmaktadır. Bu açıklar için üç farklı

öneri getirilmiştir. İlk öneri paylaşımlı SA kullanımı ve sıra numaralarının PIM

seviyesinde kontrol edilmesidir. Böylelikle, IPSec seviyesindeki sıra numarası

karmaşası engellenmektedir. Sıra numaraları PIM seviyesinde PIM bilgisi olarak

taşınmakta ve nihayetinde tekrar gönderim koruması sağlanmaktadır. Her bir

yönlendiriciye aynı (ve tek hedefli) SA yerleştirilmesi sayesinde IPSec

spesifikasyonuna sadık kalınmaktadır. Böyle bir tasarımda, IPSec protokolünde bir

değişiklik yapılmamakta fakat PIM-SM spesifikasyonuna sıra numaralarına ilişkin

tasarım parametreleri ilave edilmektedir. Diğer bir öneri ise anahtar yönetimi için

GSA ve GDOI kullanımıdır. GDOI protokolü çok hedefli iletim için tasarlandığı için

PIM kontrol mesajlaşmasında da kullanılabilmektedir. İlk olarak her bir PIM

yönlendiricisi GDAS varlığı ile birinci kategori SA oluşturmaktadır. Daha sonra bu

SA kullanılarak toplam N + 1 adet üçüncü kategori SA yüklenmektedir. İlk üçüncü

kategori SA, PIM kontrol mesajlarının gönderilmesi için kullanılmaktadır. Diğer N

adet üçüncü kategori SA ise N adet yönlendiriciden veri alımının (PIM kontrol

mesajları) güvenli bir şekilde sağlanabilmesi için kullanılmaktadır. Bir diğer öneri ise

güvenlikle ilgili bütün işlemlerin PIM seviyesinde gerçekleşmesidir. Böylece alt

seviyeler tarafından sunulan güvenlik hizmetlerine bağımlılık azaltılmaktadır.

Sunulmakta olan her bir çözüm önerisinin avantajları ve dezavantajları mevcuttur.

GDOI sayesinde, PIM-SM spesifikasyonundaki değişim minimum olmaktadır. PIM-

SM protokolünün güvenliği için alt seviyedeki GDOI protokolüne güvenilmektedir.

GDOI çözümünün dezavantajı ise kullanılan SA adedinin fazla olması dolayısıyla

yönlendiricilerde yüksek işlem gücü ve ilave durum gerektirmesidir.

6.3.2.2 MSDP Güvenliği

PIM-SM protokolü etki alanları içerisinde kullanılmaktadır. Bu protokolün etki

alanları arasında kullanılabilmesi için MSDP protokolünden yararlanılmaktadır.

MSDP sayesinde pek çok PIM-SM etki alanı birbirine bağlanabilmektedir. Her bir

etki alanı, kendi içerisindeki RP varlıklarını kullanmakta ve dolayısıyla diğer etki

alanları içerisindeki RP varlıklarına bağımlı kalmamaktadır. MSDP üzerinde yapılan

analiz sonucu PIM-SM güvenliği için [122] içerisindeki anahtarlama stratejisi

207

kullanıldığında kaynak aktif mesajları için kaynak kimlik doğrulaması yapılması

gereği ortaya çıkmaktadır. MDSP konuşmacıları etki alanları içerisindeki RP

varlıklarından oluştuğu ve kaynak aktif mesajları kaynağın bulunduğu etki alanından

uzağa doğru iletildiği için açık anahtarların ve sayısal imzaların PIM seviyesi

içerisinde kullanılması gerekmektedir.

Böyle bir güvenlik yapısı kullanıldığında MSDP konuşmacıları aldıkları kaynak aktif

mesajlarına ilişkin doğrulama işlemlerini yapmakta ve daha sonra mesajı

değiştirmeden diğer MSDP konuşmacılarına iletmektedir. Sayısal imzaların alt

seviyelerde uygulanması söz konusu olduğunda, mesajlar adımdan adıma kontrol

edileceği için mesajı oluşturan varlığın kimlik bilgisi ikinci adıma taşınamamaktadır.

Fakat güvenlik işlemlerinin PIM seviyesinde yapılması sonucu mesajı oluşturan

varlıkla ilgili doğrulama bilgileri kaybolmamaktadır.

208

7. SONUÇ

Günümüzde çok hedefli iletimin, bir çok uygulaması vardır. Bu uygulamalara altyapı

sağlanması amacıyla, yerel şebeke, yönlendirme ve adresleme alanlarında birbirinden

bağımsız pek çok mimari ve protokol oluşturulmuştur. Çalışmada, bu protokollerin

fazlalığının ve uygulamaların çeşitliliğinin, standart bir yapı oluşturulmasına engel

olduğu; çalışma ve araştırma grupları arasında iyi bir koordinasyon sağlanamadığı

görülmüştür. Yerel şebeke içerisinde kullanılan IGMP [1,12,13] protokolünün üç

farklı sürümünün olması, yönlendirme alanında oluşturulan protokollerin çokluğu ve

halen çok azının kullanılıyor olması, koordinasyon eksikliğine örnek olarak

verilebilir. Çok hedefli iletime duyulan ihtiyaç sonucunda, ticari hizmetlerin

verilebilmesi amacıyla kısa vadeli çözümlere gidilmesi ve geçiş dönemi

protokollerinin yayınlanması bu durumu doğurmuştur. Çok hedefli iletim

araştırmaları için bir test ortamı olması ve teknolojinin yayılması amacıyla kurulan,

“MBONE - Internet çok hedefli iletim omurgası”’nın işlevselliğini yitirmiş olduğu

ve yeni gelişmelere ihtiyaç duyulduğu anlaşılmaktadır. Günümüzde MBONE

kademeli bir şekilde küçülmekte ve çok hedefli iletim yeteneği Internet üzerindeki

şebekelere yayılmaktadır.

Çok hedefli iletim altyapısının gerektiği gibi geliştirilememesi, güvenlik ile ilgili

araştırmaları da etkilemiştir. Tezde, altyapı ve içerik güvenliği alanlarında pek çok

çalışma yapıldığı; ancak, altyapı henüz tam olarak oturtulamadığından dolayı ilgili

güvenlik çalışmalarının altyapı bozuklukları ve eksikliklerine bağımlı kaldığı

görülmüştür.

İçerik güvenliğinde altyapıda yaşanan sorunlar söz konusu değildir. Burada çok

hedefli iletim uygulamalarının çeşitliliği, zorunlu olarak güvenlik çözümlerinde de

çeşitliliği beraberinde getirmiştir. Internet üzerinde tek hedefli iletim için alınan

güvenlik önlemleri, hedef sayısının birden fazla olması gibi sebeplerden dolayı çok

hedefli iletim için kullanılamamakta; grup trafiğinin tek bir anahtar kullanılarak

209

şifrelenmesi tam bir güvenlik sağlayamamaktadır. Gruba üye olan bütün sistemlerin

iletim anahtarını bilmesi, sistemlerden herhangi birinin diğerleri adına izinli olmayan

mesajlar üretebilmesine sebep olmaktadır. Bu problemin aşılabilmesi için grup

anahtar yönetim mimarileri oluşturulmuştur.

Grup anahtar yönetim mimarilerinin temelinde, “grup güvenlik ilişkileri modeli -

(GSA)” [74] yatmaktadır. GSA modelinde kullanılan birinci kategori SA’nın her bir

üye için oluşturulması zorunluluğu, ölçeklenebilirlik problemlerini beraberinde

getirmektedir. Buna ek olarak, gruba iletim yapan kaynakların birden fazla olduğu

durumlarda üçüncü kategori SA’nın kaynak sayısına göre ayarlanması

gerekmektedir. Birden fazla üçüncü kategori SA kullanımı ölçeklenebilirlik

sorunlarına yol açmaktadır. Grup anahtar yönetim mimarileri için en önemli etken,

ikinci kategori SA’nın nasıl dağıtılacağıdır. IKAM mimarisinde [83] bu sorun

yönetimsel gruplar kullanılarak çözülmüş; ancak, grup sayısı arttığı için yönetimin

zorlaştığı görülmüştür. Etki alanı içerisinde merkezi bir yönetimin sağlanabilmesi

açısından, IKAM’ın kullanılması bir avantajdır. IETF bünyesinde yapılan

çalışmalarda IKAM mimarisinin gelecekte bir standart olarak oturtulması yönünde

gelişmeler devam etmektedir. “Iolus” mimarisinde [86] ölçeklenebilirlik,

sorumluluğun şebeke içerisindeki varlıklara aktarılması ve alt iletim gruplarının

oluşturulması ile sağlanmış; fakat bu nedenle karmaşıklık artmıştır. Çalışmada,

günümüzde içerik sağlayıcı ile şebeke sağlayıcı varlıkların birbirinden farklı olması

nedeniyle, Iolus mimarisinin geniş kullanım alanı bulamayacağı öngörülmektedir.

Anahtar yönetimi ve tekrar anahtarlama algoritmaları söz konusu olduğunda, her bir

algoritma farklı avantajlar sağlamaktadır. MARKS [81] algoritması, sistemlerin

gruba ne zaman gireceği ve ne zaman çıkacağının belli olduğu uygulamalarda

başarılı olmakta; ancak, algoritma içerisinde üye olan bir sistemin üyelikten nasıl

çıkarılacağının tanımlanmamış olması ve tekrar anahtarlama mekanizmalarının

bulunmaması, algoritmanın kullanım alanını kısıtlamaktadır. LKH algoritması [89]

grup üyelerini bir hiyerarşi içerisine oturtmak yerine, anahtarları hiyerarşi içerisine

oturtmak amacıyla oluşturulmuş ilk algoritmadır. Yönetim, merkezi olduğu için

içerik sağlayıcı ve şebeke sağlayıcı varlıkların farklı olması, herhangi bir sorun

yaratmamaktadır. Algoritma içerisinde üç farklı anahtar çizgesi bulunmaktadır.

Çalışmada, çok hedefli iletim için yıldız ve ağaç çizgelerinin kullanılmasının uygun

olduğu sonucuna varılmıştır. Ağaç çizgelerinde anahtar sayısının minimum olması,

210

ağaç çizgelerini yıldız çizgelere nazaran daha avantajlı hale getirmektedir. Ayrıca,

LKH algoritmasının grup odaklı tekrar anahtarlama stratejisi ile yapılması, maliyeti

minimumda tutmaktadır. OFT algoritması [78] kullanılan çözümlerde, grup anahtarı,

LKH algoritmasının tam tersine, aşağıdan yukarıya doğru oluşturulmakta ve grup

üyeleri anahtar üretimine katkıda bulunmaktadır. Perdelenmiş anahtarlar sayesinde

tekrar anahtarlama için gönderilen bit sayısı yarıya inmekte, fakat yapılan işlemlerin

sayısı ve algoritma karmaşıklığı artmaktadır. Çalışmada, sistemlerin pek çok gruba

üye olduğu durumlarda, OFT algoritması içerisinde tanımlanan grup indüklemesi

mekanizmasının kullanımı sayesinde, grup kurulum sürelerinin kısaldığı

görülmüştür. Ayrıca, OFT algoritmasının temelini oluşturan tek yönlü işlevlerin

LKH içerisinde kullanımı sayesinde, üyelik işlemleri sabit bir zaman dilimi

içerisinde yapılabilmekte; bu sayede güvenlikle ilgili ek yük, üye sayısından

bağımsız hale getirilmektedir. Anahtarlama algoritmalarında en önemli nokta,

kullanılan anahtarların grup üye sayısıyla üstel veya doğrusal olarak artmamasıdır.

Çalışmada, LKH ve OFT tekniklerinde anahtar sayısı üye sayısıyla logaritmik olarak

artmakta olduğu için, bu iki teknik ve türevleri en cazip çözümler olarak

belirlenmiştir.

Çok hedefli iletimde güvenlik çerçevesi içerisinde düşünülmesi zorunlu olan bir

başka konu da, kaynak kimlik doğrulaması ve erişim kontrolüdür. Bu işin yegane

çözümü, sayısal imzaların kullanımıdır; fakat bu çözüm, işlem gücü ve hafıza

açısından pratik olarak imkansızdır. Güvenliğin pratik olarak sağlanabilmesi için

özet işlevleri ve mesaj doğrulama kodları, sayısal imzaların mesajlar üzerine

paylaştırılması ile birlikte kullanılmaktadır. Sayısal imzanın bütün akım üzerinde

paylaştırıldığı özet zincirleme tekniklerinde en büyük dezavantaj, paket kayıplarına

karşı toleransın çok az olması, iletimin sırasıyla yapılması zorunluluğu ve iletimden

önce bilginin tamamının kaynakta bulunması gerekliliğidir. Çalışmada, özet

zincirleme teknikleri içerisinde en avantajlısının EMSS [98] olduğu sonucuna

varılmıştır. Özet zincirlemesinin 5-11-17-24-36-49 şekilde yapılması optimum

çözümlerden biridir. Bunun yanı sıra dinamik zincirlemenin kullanımı da optimuma

yakın bir seçenektir.

EMSS tekniğinde, mesajlarla birlikte gönderilen ek yükün artmasıyla, paket

kayıplarına karşı tolerans arttırılmaktadır. Avantajlarının yanı sıra, EMSS ve

uzatılmış zincirleme [99] tekniklerinde pek çok dezavantaj bulunmuştur. İmza

211

paketleri, iletimin sonunda gönderildiği için alıcı sistemlerde doğrulama gecikmeli

olarak yapılmaktadır. Doğrulamanın gecikmeli yapılması, alıcı sistemlerde önbellek

kullanımına yol açmakta ve olası DoS (hizmet durdurma) saldırılarına karşı güvenlik

açıkları ortaya çıkmaktadır.

Çalışmada, kaynak doğrulama ve erişim kontrolünün mesaj doğrulama kodları

(MAC) kullanılarak yapıldığında TESLA algoritmasının [98] en avantajlı algoritma

olduğu görülmüştür. Bu algoritmada, alıcı tarafta bir mesajın doğrulanması için

sadece bir MAC operasyonuna ihtiyaç duyulmaktadır. Avantajlarının yanı sıra,

TESLA algoritmasında, zaman eşlemesinin gerçekleştirilmesinin genellikle çok

karmaşık olması ve her uygulamada sağlanamaması, doğrulamanın yapılabilmesi için

alıcı tarafta önbellekleme yapılması zorunluluğu, saldırılar sonucu bellek taşmaları

yaşanabilmesi gibi dezavantajları vardır.

EMSS ve TESLA algoritmalarının avantajlarını ve dezavantajlarını özetlemek

gerekirse, EMSS sayesinde tekrar gönderim reddedilememekte, paket kayıplarına

karşı yüksek tolerans sağlanmakta ve alıcı tarafında gecikmeli doğrulama yapılarak,

ek yük düşük seviyede tutulmaktadır. TESLA algoritmasında ise, ölçeklenebilirlik

yüksek olmakta ve ek yükün düşük tutulması için kaynak tarafında doğrulama

bilgisinin eklenmesi geciktirilmektedir. Buna ek olarak, TESLA algoritmasında grup

kurulurken yapılması gereken zaman eşitleme operasyonlarının çok karmaşık olduğu

görülmektedir.

Güvenlik politikası tanımlama dilleri üzerinde yapılan çalışmada, GSPT dilinin [114]

çok hedefli iletim uygulamalarının büyük bölümü için yeterli olduğu saptanmıştır.

Çok hedefli iletim altyapısı ele alındığında, yerel şebeke içerisinde çok hedefli iletim

güvenliğinin, erişim “token”’ı kullanımı ve IGMP mesajlarına kimlik doğrulaması

eklenmesi sayesinde çözülmeye çalışıldığı görülmüştür. Mesaj doğrulamasının

sağlanması için en güvenilir yol, sistemler ile yönlendiriciler arasında açık

anahtarların kullanılmasıdır; ancak, pratikte bu yöntem çok fazla ek yük

getirmektedir. Dolayısıyla açık anahtarlar yerine, simetrik anahtarlı MAC işlevlerinin

kullanımının daha doğru olacağı sonucu çıkmaktadır. Buna ek olarak IGMP

mesajlarının çok hedefli olarak iletilmesinden dolayı, güvenlik mekanizmalarının IP

seviyesi yerine IGMP seviyesine yerleştirilmesi gerektiği anlaşılmıştır. Bunun

212

nedeni, erişim “token”’larının defalarca kullanılabilmesi ve bu kullanımın IPSec

tekrar gönderim mekanizmasına ters düşmesidir.

Çalışmada, çok hedefli iletim yönlendirme altyapısı ile ilgili güvenliğin, kullanımda

olan protokollerin standartlaştırılamaması ve Internet üzerinde tek bir yönlendirme

altyapısı bulunmamasından dolayı parçalı olarak sağlanabildiği görülmüştür.

Yönlendirme altyapısı içerisinde bulunan varlıkların güvenli olarak haberleşebilmesi

için standart bir anahtar dağıtım mimarisi oluşturulmasına ihtiyaç duyulmaktadır. Bu

mimarinin sorumluluğunun hangi organizasyonel varlıkta olacağı, yönlendirmeye

katılan varlıkların pek çok farklı organizasyon içerisinde bulunması dolayısıyla sorun

olmaktadır. Bu sorunun çözülebilmesi için, grup politikası içerisinde belirtilen grup

sahibinin bulunduğu organizasyonun aynı zamanda anahtar mimarisinden de sorumlu

olması yoluna gidilebileceği düşünülmüştür. Ancak böyle bir durumda bütün

yönetimsel organizasyonların aynı zamanda bir anahtar yönetim mimarisi

bulundurması gerekecektir. Bir başka öneri ise, şebeke varlıklarına yönelik küresel

bir güven ve kimlik doğrulama altyapısı oluşturulmasıdır. Burada, tek hedefli iletim

uygulamalarında kullanılan sayısal sertifika sistemi bir başlangıç olarak alınabilir.

Her bir organizasyonel yapı içerisinde sertifika otoritelerinin kurulması ve bu

otoritelerin Internet yapısına uygun olarak hiyerarşik bir şekilde birbirine bağlanması

ile bu sorunun çözülebileceği düşünülmektedir.

Günümüzde PIM-SM protokolü en çok kullanım alanı bulan yönlendirme

protokolüdür. Bu protokolün güvenli hale getirilebilmesi için yapılan çalışmalarda

yerel bağlantı mesajları için tek bir SA kullanımı yoluna gidilmiştir. Çalışmada, bu

yöntemin, kontrol mesajlarının çok hedefli olarak iletilmesi söz konusu olduğu için

tam olarak işe yaramadığı görülmektedir. Bu sorunun çözülebilmesi için her bir yerel

bağlantı yönlendiricisine ilişkin ayrı bir SA tanımlanması gerekmektedir. Diğer bir

problem ise BSR kimlik doğrulaması için kullanılan sayısal imzaların kullanım

seviyesidir. BSR mesajları, yönlendiriciler arasında adım adım iletildiği için

imzaların IP seviyesinde kullanımının yanlış olacağı sonucu çıkmaktadır. Buna ek

olarak, PIM-SM protokolünün tam olarak güvenli hale getirilebilmesi için IPSec

içerisinde yapılan sıra numarası kontrolünün PIM seviyesinde yapılması

önerilmektedir. Bunun nedeni, kontrol mesajlarının mümkün olduğunca çok hedefli

olarak iletilmesi dolayısıyla, her bir kaynakta farklı sıra numaraları tutulmasıdır. Sıra

numarası kontrolünün PIM içerisinde yapılması, protokol yapısında değişiklik

213

yapılması anlamına gelmektedir. Böyle bir değişikliğin yapılması durumunda alt

seviyede IPSec kullanımı ve üst seviyede sıra numarası kontrolü sayesinde

protokolün daha güvenli hale geleceği düşünülmektedir. Çözülmesi gereken bir diğer

nokta, yönlendiriciler üzerindeki anahtarlama materyallerinin yönetimidir. Çok

hedefli iletim uygulamalarında kullanılan anahtarlama mekanizmalarının bu iş için

yeterli olduğu görülmektedir. Ancak PIM-SM için üçüncü kategori SA’ların

sayısının, yönlendiricilerin sayısına eşit olması dolayısıyla çok fazla güvenlik ilişkisi

kurulacağı unutulmamalıdır.

İncelemelerde, çok hedefli iletimin günümüzde çok geniş bir kullanım alanı

bulamadığı görülmüştür. Bunun en büyük nedeni, yapının tam olarak oturtulamamış

ve kullanılan protokoller üzerinde bir anlaşma sağlanamamış olmasıdır. Güvenlik söz

konusu olduğunda altyapının oturtulamamış olması, güvenlik çözümlerini de

etkilemiştir. Üretilen çözümler, devamlı değişen yapıtaşları nedeniyle pratik

sonuçlara dönüştürülememiştir. Çok hedefli iletimde, farklı yerlerde bulunan pek çok

sistem bir araya geldiği için, güvenlik mekanizmaları içerisinde oluşturulacak güven

dağılımının nasıl olacağı halen bir soru işaretidir.

Gelecekte, çok hedefli iletim ile ilgili güvenlik altyapısının bütün Internet’i

kapsayacak şekilde oluşturulması gerekmektedir. Küresel bir güvenlik mimarisi, en

üst seviyeden alt seviyelere kadar uzanmalı ve bu yapı içerisine dahil olan varlıkların

kimlikleri küresel olarak doğrulanabilmelidir. Organizasyonlar arası güvenilirlik

ancak bu şekilde sağlanabilir.

Çok hedefli iletim ile ilgili güvenlik sorunları küresel anlamda çözülmeden

teknolojinin ilerlemesi veya yaygınlaşması beklenmemektedir. Çalışmada,

günümüzde kullanılan yapının buna izin vermediği sonucuna varılmıştır.

214

KAYNAKLAR

[1] Deering, S., 1989. Host extensions for IP multicasting, RFC 1112, IETF.

[2] Vida, R., Costa, L., 2004. Multicast Listener Discovery Version 2 (MLDv2) for

IPv6, RFC 3810, IETF.

[3] Deering S., 1988. Multicast Routing in Internetworks and Extended LANs,

Doktora Tezi, Stanford Üniversitesi, California.

[4] Hardjono, T., Canetti, R., Baugher, M. ve Disnmore S., 1999. Secure IP

Multicast: Problem areas, Framework, and Building Blocks, draft-irtf-

smugframework-00.txt, IRTF.

[5] Wong, K. C. ve Lam, S. S., 1998. Digital Signatures for Flows and Multicasts,

IEEE ICNP’98.

[6] Canetti R., Rohatgi P. ve Cheng P., 2000. Multicast Data Security

Transformations: Requirements, Considerations, and Proposed

Design, IRTF, darft-irtg-smug-transforms-00.txt.

[7] Postel, J., 1981. Internet Protocol, RFC 791.

[8] Raynolds, J., 2002. Assigned Numbers: RFC 1700 is Replaced by an On-line

Database, RFC 3232, IETF.

[9] Postel, J., 1981. Internet Control Message Protocol - DARPA Internet Program

Protocol Specification, RFC 792.

[10] Deering, S., ve Cheriton, D., 1985. Host groups: A multicast extension to the

Internet Protocol, RFC 966, IETF.

[11] Deering, S., 1986. Host extensions for IP multicasting, RFC 988, IETF.

[12] Fenner, W., 1997. Internet Group Management Protocol, Version 2, RFC 2236,

IETF.

[13] Cain, B., Deering, S., Kouvelas, I., Fenner, B. ve Thyagarajan, A., 2002.

Internet Group Management Protocol, Version 3, RFC 3376, IETF.

[14] Katz, D., 1997. IP Router Alert Option, RFC 2113, IETF.

[15] Dalal, Y.K. ve Metcalfe, R. M., 1978. Reverse path forwarding of broadcast

packets, Communications of the ACM, 21(12), 1040-1048.

215

[16] Gilbert, E. N. ve Pollak, H. O., 1968. Steiner Minimal Trees, SIAM Journal on

Applied Mathematics, 16(1), 1-29.

[17] Karp, R. M., 1972. Reducing among combinatorial problems, Plennum Press,

New York.

[18] Meyer D., Scalable Approaches to IP Multicast, Oregon Universitesi – ANTC

[19] Adams, A., Nicholas, J., ve Siadak, W., 2005. Protocol Independent Multicast

– Dense Mode (PIM-DM): Protocol Specification (Revised), RFC

3973, IETF.

[20] Ballardie, A., 1997. Core Based Trees (CBT version 2) Multicast Routing --

Protocol Specification --, RFC 2189, IETF.

[21] Estrin, D., Farinacci, D., Helmy, A., Thale,r D., Deering, S., Handley, M,

Jacobson, V., Liu, C., Sharma, P. ve Wei, L., 1998. Protocol

Independent Multicast-Sparse Mode (PIM-SM): Protocol

Specification, RFC 2362, IETF.

[22] McQuillan, J. M., Richer, I., ve Rosen, D. C., 1980. The new routing

algorithm for he ARPANET, IEEE Transactions on Communications,

28(5), 711-719.

[23] Hendrik, C., 1998. Routing Information Protocol 2, RFC 2453, IETF.

[24] Boggs, D. R., Shoch, J. F., Taft, E. A. ve Metcalfe, R. M., 1980. PUP: an

internetwork architecture, IEEE Transactions on Communications,

28(4), 612-624.

[25] Waitzman, D., Partridge, C. ve Deering, S., 1988. Distance Vector Multicast

Routing Protocol, RFC 1075, IETF.

[26] Moy, J., 1998. OSPF Version 2, RFC 2328, IETF.

[27] Moy, J., 1994. Multicast Extensions to OSPF, RFC 1584, IETF.

[28] Rekhter, Y. ve Li, T., 1995. Borger Gateway Protocol 4 (BGP-4), RFC 1771,

IETF.

[29] Bates, T., Rekhter, Y., Chandra, R. ve Katz, D., 2000. Multiprotocol

Extensions for BGP-4, RFC 2858, IETF.

[30] Thaler D., 2004. Border Gateway Multicast Protocol (BGMP): Protocol

Specification, RFC 3913, IETF.

[31] Estrin, D., Farinacci, D., Helmy, A., Thaler, D., Deering, S., Handley, M.,

Jacobson, V., Liu, C., Sharma, P. ve Wei, L., 1997. Protocol

216

Independent Multicast-Sparse Mode (PIM-SM): Protocol

Specification, RFC 2117, IETF.

[32] Fenner, B., Handley, M., Holbrook, H. ve Kouvelas, I., 2004. Protocol

Independent Multicast-Sparse Mode (PIM-SM): Protocol

Specification (Revised), draft-ietf-pim-sm-v2-new-11.ps, IETF.

[33] Fenner, W., Handley, M., Kermode, R. ve Thaler, D., Bootstrap Router

(BSR) Mechanism for PIM Sparse Mode, draft-ietf-pim-sm-bsr-03.txt.

[34] Thaler, D., 1999. Interoperability Rules for Multicast Routing Protocols, RFC

2715, IETF.

[35] Fenner, B. ve Meyer, D., 2003. Multicast Source Discovery Protocol (MSDP),

RFC 3618, IETF.

[36] Thaler, D., Handley, M., ve Estrin, D., 2000. The Internet Multicast Address

Allocation Architecture, RFC 2908, IETF.

[37] Meyer, D., 1998. Administratively Scoped IP Multicast, RFC 2365, IETF.

[38] Hanna, S., Patel, B. ve Shah, M., 1999. Multicast Address Dynamic Client

Allocation Protocol (MADCAP), RFC 2730, IETF.

[39] Handley, M., Thaler, D. ve Kermode, R., 2000. Multicast Scope Zone

Announcement Protocol, RFC 2276, IETF.

[40] Finlayson, R., 2000. Abstract API for Multicast Address Aloocation, RFC

2771, IETF.

[41] Handley, M. ve Hanna, S., 2000. Multicast Address Allocation Protocol

(AAP), raft-ietf-malloc-aap-04.txt, IETF.

[42] Estrin, D., Govindan, R., Handley, M., Kumar, S., Radoslavov, P. ve

Thaler, D., 2000. The Multicast Address-Set Claim (MASC)

Protocol, RFC 2909.

[43] Meyer, D. ve Lothberg, P., 2000. GLOP Addressing in 233/8, RFC 2770.

[44] Guttman, E., Perkins, C., Veizades, J. ve Day, M., 1999. Service Location

Protocol, Version 2, RFC 2608, IETF.

[45] Jacobson, V. ve Deering, S., 1994. Administratively Scoped IP Multicast, 30th

IETF Conference, Toronto, Canada.

[46] Meyer, D., ve Lothberg, P., 2001. GLOP Addressing in 223/8, RFC 3180,

IETF.

[47] Meyer, D., 2001. Extended Assignments in 233/8, RFC 3138, IETF.

217

[48] Bhattacharyya S., 2003, An Overview of Source-Specific Multicast (SSM),

RFC 3569, IETF.

[49] Vohra, Q. ve Chen, E., 2004. BGP Support for Four-octet AS Number Space,

draft-ietf-idr-as4bytes-08.txt, IETF.

[50] Haberman, B. ve Thaler D., 2002, Unicast-Prefix-based IPv6 Multicast

Addresses, RFC 3306, IETF.

[51] Almeroth, K., 2000. A long-term analysis of growth and usage patterns in the

Multicast Backbone (MBone), IEEE Infocom, Tel Aviv İsrail.

[52] Almeroth, K., 2000. The Evolution of Multicast: From the MBone to

Interdomain Multicast to Internet2 Deployment, IEEE Network, Ocak

– Şubat.

[53] Casner, S. ve Deering, S., 1992. First IETF Internet audiocast, ACM Computer

Communication Review, s. 92-97.

[54] Schulzrinne, H., Casner, S., Frederick, R. ve Jacobson, V., 2003. RTP: A

Transport Protocol for Real-Time Applications, RFC 3550, IETF.

[55] Farinacci, D., 1998. Multicast Source Discovery Protocol (MSDP), draft-

farinacci-msdp-*.txt, IETF.

[56] Mcbride, M., Meylor, J. ve Meyer, D., 2004 Multicast Source Discovery

Protocol (MSDP) Deployment Scenarios, draft-ietf-mboned-msdp-

deploy-06.txt, IETF.

[57] Postel, J., 1981. Transmission Control Protocol, RFC 0793, IETF.

[58] Ballardie, T., 1999. On Extending The Standart IP Multicast Architecture,

College Londra Teknik Raporu, RN/99/21.

[59] Holbrrok, H. ve Cheriton, D., 1999. IP Multicast Channels: EXPRESS

Support for LArge-Scale Single-Source Applications, ACM

SIGCOMM, Cambridge MA.

[60] Perlman, R., 1999. Simple Multicast: A Design of Simple: Low-Overhaed

Multicast, draft-perlman-simple-multicast-*.txt, IETF.

[61] LaMaster, H., 1999. Multicast Friendly Internet Exchange (MIX), dratf-ietf-

mboned-mix-*.txt, IETF.

[62] Internet2 WEB sitesi, www.internet2.edu.

[63] Cannetti, R. ve Pinkas, B., 2000. A taxonomy of multicast security issues

(updated version), draft-irtf-smug-taxonomy-01.txt, IRTF.

218

[64] Hardjono, T., Cain, B. ve Doraswamy, N., 2000. A Framework for Group Key

Management for Multicast Security, draft-ietf-ipsec-gkmframework-

03.txt, IETF.

[65] Chaum, D., 1981. Untraceable Electronic Mail, Return Address, and Digital

Pseudonyms, Communications of the ACM, 24(2).

[66] Chaum, D., 1990. Showing Credentials Without Identification: Transferring

Signatures Between Unconditional Unlinkable Pseudonyms,

AUSCRYPT, Sidney.

[67] Ohta, K. ve Koyama, K., 1987. Identity-Based Conference Key Distribution

Systems, Kriptolojide Gelişmeler – CRYPTO, LNCS 293, Santa

Barbara, CA, Ağustos, s.175-184.

[68] Harkins D. ve Carrel D., 1998. The Internet Key Exchange (IKE), RFC 2409,

IETF.

[69] Orman, H., 1998. The OAKLEY Key Determination Protocol, RFC 2412,

IETF.

[70] Maughan, D., Schertler, M., Schneider, M. ve Turner J., 1998. Internet

Security Association and Key Management Protocol (ISAKMP), RFC

2408, IETF.

[71] Piper, D., 1998. The Internet IP Security Domain of Interpretation for

ISAKMP, RFC 2407, IETF.

[72] Karn, P. ve Simpson, W., 1999. Photuris: Session Key Management Protocol,

RFC 2522, IETF.

[73] Wallaner D., Harder E. ve Agee R., 1999. Key Management for Multicast:

Issues and Architectures, RFC 2627, IETF.

[74] Harney, H., Baugher, M. ve Hardjono, T., 2001. GKM Building Block:

Group Security Association (GSA) Definition, draft-irtf-smug-gkmbb-

gsadef-01.txt, IRTF.

[75] Kent, S. ve Atkinson, R., 1998. Security Architecture for the Internet Protocol,

RFC 2401, IETF.

[76] Harney, H. ve Muckenhirnm, C., 1997. Group Key Management Protocol

(GKMP) Architecture, RFC 2094, IETF.

[77] Balenson D., Mcgrew D. ve Sherman A., 1999. Key Management for Large

Dynamic Groups: One-Way Function Trees and Amortized

Initialization, draft-balenson-groupkeymgmt-oft-00.txt, IETF.

219

[78] Balenson D., Mcgrew D. ve Sherman A., 1999. Key Management for Large

Dynamic Groups: One-Way Function Trees and Amortized

Initialization, draft-balenson-groupkeymgmt-oft-00.txt, IETF.

[79] Harney, H. ve Harder, E., 1999. Group Secure Association Key Management

Protocol, draft-harney-sparta-gsakmp-sec-00.txt, IETF.

[80] Briscoe, B. ve Fairman, I., 1999. NARK: Receiver-based Multicast Non-

repudiation and Key Management, ACM E-ticaret.

[81] Briscoe, B., 1999. MARKS: Zero Side Effect Multicast Key Management using

Arbitrarily Revealed Key Sequences, NGC.

[82] Wong, K. C. ve Lam, S. S., 1998. Digital Signatures for Flows and Multicasts,

IEEE ICNP’98.

[83] Hardjono, T., Cain, B. ve Monga I., 2000. Intra-domain Group Key

Management Protocol, darft-ietf-ipsec-intragkm-03.txt, IETF.

[84] Mittra, S., 1997. Iolus: A Framework for Scalable Secure Multicasting, ACM

SIGCOMM, Fransa, s. 277-288.

[85] Setia, S., 2000. Kronos: A Scalable Rekeying Approach for Secure Multicast,

Proc of IEEE Symposium on Security and Privacy, Oakland, Amerika.

[86] Yang, Y. R., 2001. Reliable Group Keying: Design and Performance Analysis

Proc of ACM SIGCOMM, San Diego, Amerika.

[87] Chang, I., 1999. Key Management for Secure Internet Multicast Using

Boolean Function Minimization Techniques, Proc of IEEE

INFOCOM, New York, Amerika.

[88] Zhang, X. B., 2001. Protocol Design for Scalable and Reliable Group

Rekeying, Proc of SPIE Conference on Scalability and Traffic Control

in IP Networks, Denver, Amerika.

[89] Wong, C., Gouda, M. ve Lam, S. S., 2000. Secure Group Communication

Using Key Graphs, IEEE/ACM Tans. On Networking, 8(1), s.16-30.

[90] Steiner, G. J., Neuman, C. ve Schiller, J. I., 1988. Kerberos: An

Authentication Service for Open Network Systems, USENIX Winter

Conference, s. 191-202.

[91] Rivest, R., 1992. The MD5 Message digest Algorithm, RFC 1321, IETF.

[92] Canetti, R., 1999. Multicast Security: A Taxonomy and Efficient Constructions,

IEEE INFOCOM, New York, Amerika.

220

[93] Blum, M. ve Micali S., 1984. How to Generate Cryptographically Strong

Sequences of Pseudo-Random Bits, SIAM Jurnali, 13(4).

[94] Lakshminath, D., Mukherjee S. ve Samal A., 1999. Survey and Comparison

of Secure Group Communication Protocols, Bilgisayar Bilimleri

Anabilim Dalı, Maryland Üniversitesi.

[95] Gennaro, R. ve Rohatgi P., 1997. How to Sign Digital Streams, Crypto ’97,

Springer Verlag LNCS, s. 180-197.

[96] Rohatgi, P., 1999. A compact and Fast Signature Scheme for Multicast Packet

Authentication, 6th ACM Computer and Communications Security

Conference (CCS).

[97] Cheung S., 1997. An Efficient Message Authentication Scheme for Link State

Routing, Proceedings of the 13th Annual Computer Security

Applications Conference, Amerika, s. 90-98.

[98] Perrig, A., Canetti, R., Tygar, D. ve Song, D., 2000. Efficient Authantication

and Signature of Multicast Streams Over Lossy Channels, IEEE

Syposium on Security and Privacy, Amerika.

[99] Golle, P. ve Modadugu, N., 2001. Authenticating Streamed Data in the

Presence of Random Packet Loss, Proceedings of Network ve

Distributed system Security Symposium (NDSS), Amerika, , s. 13-22.

[100] Paxson, V., 1999"End-to-End Internet Packet Dynamics, IEEE/ACM

Transactions on Networking, 7(3), s. 277-292.

[101] 13818, Information Technology – Generic Coding of Moving Pictures and

Associated Audio Information, ISO/ISEC Ulusal Standardı, Bölüm 1-

9.

[102] Miner S. ve Staddon J., 2001. Graph Based Authentication of Digital

Streams, Proc. of IEEE Symposium on Security and Privacy, Amerika,

s. 232-246.

[103] Chor, B., Fiat, A., Naor, M. ve Pinkas, B., 2000. Tracing Traitors, IEEE

Transactions on Information Theory, 46(3).

[104] Boneh D. ve Franklin M. K., 1999. An Efficient Public Key Traitor Tracing

Scheme, CRYPTO, s. 338-353

[105] Petitcolas, F. A.. P., Anderson, J. R. ve Kuhn M. G., Information Hiding – A

Survey, Proc of IEEE, Special Issue on Protection of Multimedia

Content, 87(7), 1999, s. 1062-1078.

221

[106] Naor, M. ve Pinkas, B., 2000. Efficient Trace And Revoke Schemes, Proc. of

Financial Crypto, Angola.

[107] Cox, I., Kilian, J., Leighton, T. ve Shamoon, T., 1996. A Secure, Robust

Watermark for Multimedia, Information Hiding Workshop, İngiltere,

s. 185-206.

[108] Boneh, D. ve Shaw, D., 1998. Collusion Secure Fingerprinting for Digital

Date”, IEEE Trans on Information Theory, 44(5), s. 897-1095.

[109] Dwork, C., Lotspiech J. ve Naor M., 1996. Digital Signets: Self-Encoding

Protection of Digital Information, 28th Symposium on the Theory of

Computation, s. 489-498.

[110] McDaniel, P., Harney, H., Dinsmore, P. ve Prakash A., 2000. Multicast

Security Policy, draft-irtf-smug-mcast-policy-01.txt, IRTF.

[111] Mullender, S., 1993. Distributed Systems, Addison-Wesley, Birinci baskı.

[112] Mcdaniel, P. ve Prakash, A., 2000. Ismene: Provisioning and Policy

Reconcilation in Secure Group Communication, CSE-TR-438-00

Teknik Raporu, EECS, Micgihan Üniversitesi.

[113] Balenson, D., 1999. DCCM Cryptographic Context Negotiation Template, TIS

0745-2 Teknik Raporu, TIS Laboratuarları.

[114] Hardjono, T., 2001. Group Security Policy Token, draft-ietf-msec-gspt-02.txt,

IETF.

[115] Balenson, D., 1999. DCCM Architecture and System Design, TIS 0709 Teknik

Raporu, TIB Laboratuarları.

[116] Rigney C., Rubens A., Simpson W. ve Willens S., 1997. Remote

Authentication Dial In User Service (RADIUS), RFC 2138, IETF.

[117] Hardjono, T. ve Cain B., 2000. Key Establishment for IGMP Authentication

in IP Multicast, Proc. of the 1st IEEE European Conference on

Universal Multiservice Networks (ECUMN 2000), Fransa.

[118] He, H., Hardjono, T. ve Cain, B., 2001. Simple Multicast Receiver Access

Control, draft-irtf-gsec-smrac-00.txt, IRTF.

[119] Ishikawa N., Yamanouchi N. ve Takahashi O., 1998. IGMP Extensions for

Authentication of IP Multicast Senders and Receivers, draft-ishikawa-

igmp-auth-01.txt, IETF.

222

[120] Hardjono, T., 2000. Router-Assistance for Receiver Access Control in PIM-

SM, Proc. of IEEE International Symposium on Computer

Communications (ISCC), Fransa.

[121] Judge, P. ve Ammar, M., 2002. Gothic: A Group Access Control Architecture

for Secure Multicast and Anycast, Proc. of IEEE INFOCOM, New

York.

[122] Wei, L., 1999. Authenticating PIM Version 2 Messages, draft-ietf-pim-v2-

auth-01.txt, IETF.

[123] Hardjono, T. ve Cain B., 2000. Simple Key Management Protocol for PIM,

draftietf-pim-simplekmp-01 txt, IETF.

223

ÖZGEÇMĠġ

Sinan İlkiz, 1980 yılında Bandırma’da doğdu.

Orta okul ve lise öğrenimini İstanbul’da tamamladı.

2002 yılında İ.T.Ü. Elektronik ve Haberleşme Mühendisliği lisans programından

mezun oldu ve aynı yıl Telekomünikasyon Mühendisliği yüksek lisans programına

girdi.

2000 – 2004 yılları arasında Doğuş Yayın Grubu’nda (NTV & CNBC-e televizyon

kanalları) Şebeke ve Güvenlik Uzmanı olarak çalıştı.

2004 yılı sonundan itibaren Borusan Telekom ve İletişim Hizmetleri’nde Şebeke

Mühendisi olarak çalışıyor.