Windows XP Professional yüklü bir bilgisayarın masaüstüne ağ
üzerinden, internet'ten veya direkt modem bağlantısı ile erişebilir ve
sanki o bilgisayarın başında oturuyormuşçasına kontrol edebilirsiniz.
Bunun XP'de nasıl yapıldığına geçmeden önce isterseniz sistemin nasıl
çalıştığına ve böyle bir şey'e neden ihtiyaç olabileceğine bir göz
atalım.
Uzak mesafeli bağlantılardaki hız problemi ve çözüm yöntemleri
A bilgisayarı üzerinde bir program var, B bilgisayarındaki kullanıcı bu
programı kullanmak istiyor. Eğer bu iki bilgisayar aynı yerel ağ
üzerinde ise problem yok, bildiğimiz yöntemlerle B, A'ya bağlanıp bu
programı çalıştırabilir. Peki bu iki bilgisayar aynı yerel ağ üzerinde
değil, aynı binada, aynı şehirde hatta aynı ülke veya kıta üzerinde
değilse(kaç yıl sonra bu cümleye gezegen kelimesini de ekleyeceğiz
sizce??) bu iş nasıl olur?
Hemen direkt modemle bağlanırlar veya internet üzerinden bağlanırlar
dediğinizi duyar gibi oluyorum. Ancak uzak mesafeli bağlantıların yerel
ağlara göre en büyük farkı ve dezavantajı, bağlantı hızlarındaki büyük
faklılıktır. Yerel ağ'da saniyede 10.000.000 bit (10MBs) veri aktarımı
mümkünken, modemle yapılan bağlantıda bu hız 56.000 bit'e düşüyor.
Eğer kullanılacak program, yüksek miktarda veri aktarımı gerektiren bir
programsa, yerel ağ üzerinden kullanırken 1-2 saniyede açılan program
penceresi, uzak bağlantıda belkide 10-20 dakika sürecektir.
Şöyle bir örnek verelim, elimizde adres defteri ya da ona benzer salak
bir veritabanı programı olsun. Bu program kabaca iki modülden oluşuyor.
Birincisi program kısmı, yani çalıştırdığımız adresdefteri.exe dosyası,
bu dosyanın 3 Mega Byte olduğunu varsayalım. İkinci modül ise verilerin
tutulduğu, veri.mdb isimli bir dosya, bu dosya da 10 Mega Byte olsun.
Program A bilgisayarı üzerinde yüklü, B bilgisayarı yerel ağdan, A'ya
erişiyor, B bilgisayarı üzerinde çalışan kullanıcı, adresdefteri.exe
üzerine tıkladığı anda, önce bu 3 MB'lık exe dosya ağ üzerinde B'nin
belleğine aktarılıyor ve sonra program çalışıyor. Yerel ağ'dan
bahsettiğimiz için 3 MB'lık dosya 3-5 saniyede aktarılıyor ve kullanıcı
kısa bir beklemeden sonra program ekranını görüyor. Daha sonra program,
yine ağ üzerinden veri.mdb dosyasını açıyor(burda tüm dosyanın A'dan
B'ye aktarılması gerekmiyor) ve kullanıcı kayıtlar arasında dolaştıkça
veri.mdb içideki veri gerektikçe B'ye gidiyor.
Örneğin bu adres defterinde 50 bin kişi kayıtlı ise, B üzerindeki
kullanıcı "bana Hulusi Arman'ın kaydını bul" komutunu verdiğinde,
program tüm kayıtları inceleyip bu kaydı bulmaya çalışıyor.
Her ne kadar veri.mdb'nin tamamının B'ye aktarımı gerekmese de, ilk
başta exe'nin aktarımı, sonrasında veri dosyasının açılma işlemi büyük
bir veri aktarımını gerektiriyor. Hele ki çeşitli sorgulamalar
yapıldığında, tüm veri dosyasının aktarımı veya server üzerindeki koca
dosyanın taranması gerekebiliyor. Ve unutmayın bir çok program bu
örnektekinden daha karmaşık yapıya sahiptir, birden fazla veri dosyası
kullanır. Yerel ağ'da sıkıntı yaratmayan bu işleyiş, uzak mesafeli
bağlantılarda imkansız hale geliyor.
Bu probleme karşı geliştirilen bir kaç çözüm var. Bunlardan birincisi,
şu anki konumuzla alakalı değil, ama kısaca değinelim. Client-Server
programlar diye adlandırılan yapıdan bahsediyorum.
Buradaki Client-Server kelimelerini hiç kafanıza takmayın, sistem şöyle
işliyor: Yukarıdaki örnekte, exe dosyamız sabit bir dosya. Yani bu
dosya hep aynı kalıyor, hiç değişmiyor. Eğer bu program uzak mesafeli
bağlantıyla kullanılacaksa, bir defalık bu exe dosyasını uzaktaki
kullanıcıya ulaştırırız. Veri dosyasına gelince, işin inceliği de o
noktada. Server tarafında, yani verinin tutulduğu yerde, artık tek bir
veri dosyası söz konusu değil. Onun yerine bir veri tabanı yönetim
sistemi -DBMS(data base management system)- çalışıyor. Bu piyasada isim
yapmış bir kaç programa örnek olarak ORACLE, MS SQL Server verilebilir.
Kullanıcı bir kayda ulaşmak veya birden fazla kaydı içeren bir
sorgulama yapmak istediğinde server'daki tek bir dosyanın içinde bunu
kendi bulmaya çalışmaktansa, server'a yapılacak işlemi belirten kısa
bir kod yolluyor. Az önceki örnek için (select * where ad="hulusi"
soyad="arman") gibi çok kısa bir kodu server'a yollaması yeterli
oluyor. Server kendi üzerindeki data'dan bu kritere uyan kayıtları
bulup, sadece bu bulunan kayıtları client'a, yani uzaktaki kullanıcıya
yolluyor. Böylece mümkün olan en az veri aktarımı ile işlem
gerçekleşmiş oluyor.
Peki elimizdeki program client-server yapıda bir program değilse ne
olacak? İşte o zaman karşımıza terminal emülasyonu programlar çıkıyor.
Soldaki bilgisayar uzaktan erişen bilgisayarı, sağdaki ise programı üzerinde barındıran bilgisayarı temsil ediyor.
Uzaktan bağlanan bilgisayar, karşı tarafın ekran görüntüsünü alıyor,
kendi klavye ve mouse hareketlerini karşı tarafa yolluyor. Böylece
çalıştırılan program hiçbir yere gitmiyor, kendi üzerinde bulunduğu
bilgisayarda çalışıyor, ama ekran görüntüsü uzaktaki kullanıcıya
gidiyor. Böylece kullanılan program ne kadar büyük veri aktarımı
gerektirirse gerektirsin, farketmiyor.
XP'nin uzaktan bağlantı özelliği ile yapılabilecek bir kaç örnek uygulama
Örnek 1 Gün boyunca şirketin muhasebe programında çalıştınız. Akşam
oldu evinize gitmeniz gerekiyor. XP yüklü bilgisayarınızı açık bırakın.
Eve gidince, evdeki XP yüklü bilgisayarınızla, iş yerindeki bilgisayara
modem ile bağlanın. XP uzaktan bağlantı (Remote Desktop Access)
özelliği sayesinde, artık evinizdeki bilgisayarda, iş yerindeki
bilgisayarın ekran görüntüsü var. Klavye ve mouse ile verdiğiniz
komutlar ise, iş yerindeki bilgisayarda yerine getiriliyor. İstediğiniz
gibi çalışabilirsiniz. Dikkat ederseniz, iş yerinde kurulu sistem,
programın özelliği vs. hiçbirşey bizi ilgilendirmiyor. Eğer iş
yerindeki bilgisayarda bir program çalışıyorsa, siz evden de onu
kullanabiliyorsunuz.
Örnek 2 Bilgisayarınızda bir problem var, şirketinizdeki veya sistem
destek aldığınız yerdeki teknisyenden rica ediyorsunuz, aynı yöntemle
bilgisayarınıza bağlanıyor ve sanki gelip sizin koltuğunuza oturmuş
gibi bilgisayarınızı kullanıyor ve problemi çözüyor.
Unutmayın Remote Desktop bağlantıları hem yerel ağ üzerinden hem de internet üzerinden yapılabiliyor.
Remote Desktop Access'in Windows XP Pro üzerinde kurulumu
üzerinden, internet'ten veya direkt modem bağlantısı ile erişebilir ve
sanki o bilgisayarın başında oturuyormuşçasına kontrol edebilirsiniz.
Bunun XP'de nasıl yapıldığına geçmeden önce isterseniz sistemin nasıl
çalıştığına ve böyle bir şey'e neden ihtiyaç olabileceğine bir göz
atalım.
Uzak mesafeli bağlantılardaki hız problemi ve çözüm yöntemleri
A bilgisayarı üzerinde bir program var, B bilgisayarındaki kullanıcı bu
programı kullanmak istiyor. Eğer bu iki bilgisayar aynı yerel ağ
üzerinde ise problem yok, bildiğimiz yöntemlerle B, A'ya bağlanıp bu
programı çalıştırabilir. Peki bu iki bilgisayar aynı yerel ağ üzerinde
değil, aynı binada, aynı şehirde hatta aynı ülke veya kıta üzerinde
değilse(kaç yıl sonra bu cümleye gezegen kelimesini de ekleyeceğiz
sizce??) bu iş nasıl olur?
Hemen direkt modemle bağlanırlar veya internet üzerinden bağlanırlar
dediğinizi duyar gibi oluyorum. Ancak uzak mesafeli bağlantıların yerel
ağlara göre en büyük farkı ve dezavantajı, bağlantı hızlarındaki büyük
faklılıktır. Yerel ağ'da saniyede 10.000.000 bit (10MBs) veri aktarımı
mümkünken, modemle yapılan bağlantıda bu hız 56.000 bit'e düşüyor.
Eğer kullanılacak program, yüksek miktarda veri aktarımı gerektiren bir
programsa, yerel ağ üzerinden kullanırken 1-2 saniyede açılan program
penceresi, uzak bağlantıda belkide 10-20 dakika sürecektir.
Şöyle bir örnek verelim, elimizde adres defteri ya da ona benzer salak
bir veritabanı programı olsun. Bu program kabaca iki modülden oluşuyor.
Birincisi program kısmı, yani çalıştırdığımız adresdefteri.exe dosyası,
bu dosyanın 3 Mega Byte olduğunu varsayalım. İkinci modül ise verilerin
tutulduğu, veri.mdb isimli bir dosya, bu dosya da 10 Mega Byte olsun.
Program A bilgisayarı üzerinde yüklü, B bilgisayarı yerel ağdan, A'ya
erişiyor, B bilgisayarı üzerinde çalışan kullanıcı, adresdefteri.exe
üzerine tıkladığı anda, önce bu 3 MB'lık exe dosya ağ üzerinde B'nin
belleğine aktarılıyor ve sonra program çalışıyor. Yerel ağ'dan
bahsettiğimiz için 3 MB'lık dosya 3-5 saniyede aktarılıyor ve kullanıcı
kısa bir beklemeden sonra program ekranını görüyor. Daha sonra program,
yine ağ üzerinden veri.mdb dosyasını açıyor(burda tüm dosyanın A'dan
B'ye aktarılması gerekmiyor) ve kullanıcı kayıtlar arasında dolaştıkça
veri.mdb içideki veri gerektikçe B'ye gidiyor.
Örneğin bu adres defterinde 50 bin kişi kayıtlı ise, B üzerindeki
kullanıcı "bana Hulusi Arman'ın kaydını bul" komutunu verdiğinde,
program tüm kayıtları inceleyip bu kaydı bulmaya çalışıyor.
Her ne kadar veri.mdb'nin tamamının B'ye aktarımı gerekmese de, ilk
başta exe'nin aktarımı, sonrasında veri dosyasının açılma işlemi büyük
bir veri aktarımını gerektiriyor. Hele ki çeşitli sorgulamalar
yapıldığında, tüm veri dosyasının aktarımı veya server üzerindeki koca
dosyanın taranması gerekebiliyor. Ve unutmayın bir çok program bu
örnektekinden daha karmaşık yapıya sahiptir, birden fazla veri dosyası
kullanır. Yerel ağ'da sıkıntı yaratmayan bu işleyiş, uzak mesafeli
bağlantılarda imkansız hale geliyor.
Bu probleme karşı geliştirilen bir kaç çözüm var. Bunlardan birincisi,
şu anki konumuzla alakalı değil, ama kısaca değinelim. Client-Server
programlar diye adlandırılan yapıdan bahsediyorum.
Buradaki Client-Server kelimelerini hiç kafanıza takmayın, sistem şöyle
işliyor: Yukarıdaki örnekte, exe dosyamız sabit bir dosya. Yani bu
dosya hep aynı kalıyor, hiç değişmiyor. Eğer bu program uzak mesafeli
bağlantıyla kullanılacaksa, bir defalık bu exe dosyasını uzaktaki
kullanıcıya ulaştırırız. Veri dosyasına gelince, işin inceliği de o
noktada. Server tarafında, yani verinin tutulduğu yerde, artık tek bir
veri dosyası söz konusu değil. Onun yerine bir veri tabanı yönetim
sistemi -DBMS(data base management system)- çalışıyor. Bu piyasada isim
yapmış bir kaç programa örnek olarak ORACLE, MS SQL Server verilebilir.
Kullanıcı bir kayda ulaşmak veya birden fazla kaydı içeren bir
sorgulama yapmak istediğinde server'daki tek bir dosyanın içinde bunu
kendi bulmaya çalışmaktansa, server'a yapılacak işlemi belirten kısa
bir kod yolluyor. Az önceki örnek için (select * where ad="hulusi"
soyad="arman") gibi çok kısa bir kodu server'a yollaması yeterli
oluyor. Server kendi üzerindeki data'dan bu kritere uyan kayıtları
bulup, sadece bu bulunan kayıtları client'a, yani uzaktaki kullanıcıya
yolluyor. Böylece mümkün olan en az veri aktarımı ile işlem
gerçekleşmiş oluyor.
Peki elimizdeki program client-server yapıda bir program değilse ne
olacak? İşte o zaman karşımıza terminal emülasyonu programlar çıkıyor.
Soldaki bilgisayar uzaktan erişen bilgisayarı, sağdaki ise programı üzerinde barındıran bilgisayarı temsil ediyor.
Uzaktan bağlanan bilgisayar, karşı tarafın ekran görüntüsünü alıyor,
kendi klavye ve mouse hareketlerini karşı tarafa yolluyor. Böylece
çalıştırılan program hiçbir yere gitmiyor, kendi üzerinde bulunduğu
bilgisayarda çalışıyor, ama ekran görüntüsü uzaktaki kullanıcıya
gidiyor. Böylece kullanılan program ne kadar büyük veri aktarımı
gerektirirse gerektirsin, farketmiyor.
XP'nin uzaktan bağlantı özelliği ile yapılabilecek bir kaç örnek uygulama
Örnek 1 Gün boyunca şirketin muhasebe programında çalıştınız. Akşam
oldu evinize gitmeniz gerekiyor. XP yüklü bilgisayarınızı açık bırakın.
Eve gidince, evdeki XP yüklü bilgisayarınızla, iş yerindeki bilgisayara
modem ile bağlanın. XP uzaktan bağlantı (Remote Desktop Access)
özelliği sayesinde, artık evinizdeki bilgisayarda, iş yerindeki
bilgisayarın ekran görüntüsü var. Klavye ve mouse ile verdiğiniz
komutlar ise, iş yerindeki bilgisayarda yerine getiriliyor. İstediğiniz
gibi çalışabilirsiniz. Dikkat ederseniz, iş yerinde kurulu sistem,
programın özelliği vs. hiçbirşey bizi ilgilendirmiyor. Eğer iş
yerindeki bilgisayarda bir program çalışıyorsa, siz evden de onu
kullanabiliyorsunuz.
Örnek 2 Bilgisayarınızda bir problem var, şirketinizdeki veya sistem
destek aldığınız yerdeki teknisyenden rica ediyorsunuz, aynı yöntemle
bilgisayarınıza bağlanıyor ve sanki gelip sizin koltuğunuza oturmuş
gibi bilgisayarınızı kullanıyor ve problemi çözüyor.
Unutmayın Remote Desktop bağlantıları hem yerel ağ üzerinden hem de internet üzerinden yapılabiliyor.
Remote Desktop Access'in Windows XP Pro üzerinde kurulumu