Kamis, 08 Juli 2010

operating system

Sistem operasi
Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Ini adalah halaman drafTerkini (belum ditinjau)
Langsung ke: navigasi, cari
Broom icon.svg
Artikel bertopik teknologi informasi ini perlu dirapikan agar memenuhi standar Wikipedia
Merapikan artikel bisa berupa membagi artikel ke dalam paragraf atau wikifikasi artikel. Setelah dirapikan, tolong hapus pesan ini.
Ubuntu

coba Dalam Ilmu komputer, Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.

Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditaruh pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi.
Daftar isi
[sembunyikan]

* 1 Pendahuluan
* 2 Layanan inti umum
* 3 Sistem Operasi saat ini
* 4 Proses
o 4.1 Status Proses
* 5 Lihat pula
* 6 Pranala luar

Pendahuluan

Biasanya, istilah Sistem Operasi sering ditujukan kepada semua software yang masuk dalam satu paket dengan sistem komputer sebelum aplikasi-aplikasi software terinstall. Dalam Ilmu komputer, Sistem operasi atau dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.

Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditempatkan pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi

Kalau sistem komputer terbagi dalam lapisan-lapisan, maka Sistem Operasi adalah penghubung antara lapisan hardware dan lapisan software. Lebih jauh daripada itu, Sistem Operasi melakukan semua tugas-tugas penting dalam komputer, dan menjamin aplikasi-aplikasi yang berbeda dapat berjalan secara bersamaan dengan lancar. Sistem Operasi menjamin aplikasi software lainnya dapat menggunakan memori, melakukan input dan output terhadap peralatan lain, dan memiliki akses kepada sistem file. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur skedule yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu.


Dalam banyak kasus, Sistem Operasi menyediakan suatu pustaka dari fungsi-fungsi standar, dimana aplikasi lain dapat memanggil fungsi-fungsi itu, sehingga dalam setiap pembuatan program baru, tidak perlu membuat fungsi-fungsi tersebut dari awal.


Sistem Operasi secara umum terdiri dari beberapa bagian:

1. Mekanisme Boot, yaitu meletakkan kernel ke dalam memory
2. Kernel, yaitu inti dari sebuah Sistem Operasi
3. Command Interpreter atau shell, yang bertugas membaca input dari pengguna
4. Pustaka-pustaka, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain
5. Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka.


Sebagian Sistem Operasi hanya mengizinkan satu aplikasi saja yang berjalan pada satu waktu (misalnya DOS), tetapi sebagian besar Sistem Operasi baru mengizinkan beberapa aplikasi berjalan secara simultan pada waktu yang bersamaan. Sistem Operasi seperti ini disebut sebagai Multi-tasking Operating System (misalnya keluarga sistem operasi UNIX). Beberapa Sistem Operasi berukuran sangat besar dan kompleks, serta inputnya tergantung kepada input pengguna, sedangkan Sistem Operasi lainnya sangat kecil dan dibuat dengan asumsi bekerja tanpa intervensi manusia sama sekali. Tipe yang pertama sering disebut sebagai Desktop OS, sedangkan tipe kedua adalah Real-Time OS


Sebagai contoh, yang dimaksud sistem operasi itu antara lain adalah Windows, Linux, Free BSD, Solaris, palm, symbian, dan sebagainya.
Layanan inti umum

Seiring dengan berkembangnya Sistem Operasi, semakin banyak lagi layanan yang menjadi layanan inti umum. Kini, sebuah OS mungkin perlu menyediakan layanan network dan koneksitas internet, yang dulunya tidak menjadi layanan inti umum. Sistem Operasi juga perlu untuk menjaga kerusakan sistem komputer dari gangguan program perusak yang berasal dari komputer lainnya, seperti virus. Daftar layanan inti umum akan terus bertambah.


Program saling berkomunikasi antara satu dengan lainnya dengan Antarmuka Pemrograman Aplikasi, Application Programming Interface atau disingkat dengan API. Dengan API inilah program aplikasi dapat berkomunikasi dengan Sistem Operasi. Sebagaimana manusia berkomunikasi dengan komputer melalui Antarmuka User, program juga berkomunikasi dengan program lainnya melalui API.


Walaupun demikian API sebuah komputer tidaklah berpengaruh sepenuhnya pada program-program yang dijalankan diatas platform operasi tersebut. Contohnya bila program yang dibuat untuk windows 3.1 bila dijalankan pada windows 95 dan generasi setelahnya akan terlihat perbedaan yang mencolok antara window program tersebut dengan program yang lain.
Sistem Operasi saat ini

Sistem operasi-sistem operasi utama yang digunakan komputer sistem umum (termasuk PC, komputer personal) terbagi menjadi 3 kelompok besar:

1. Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows 7 (Seven) yang dirilis pada tahun 2009, dan Windows Orient yang akan dirilis pada tahun 2014)).
2. Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.
3. Mac OS, adalah sistem operasi untuk komputer keluaran Apple yang biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah Mac OS X versi 10.4 (Tiger). Awal tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).

Sedangkan komputer Mainframe, dan Super komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll.
Proses

Prosesor mengeksekusi program-program komputer. Prosesor adalah sebuah chip dalam sistem komputer yang menjalankan instruksi-instruksi program komputer. Dalam setiap detiknya prosesor dapat menjalankan jutaan instruksi.

Program adalah sederetan instruksi yang diberikan kepada suatu komputer. Sedangkan proses adalah suatu bagian dari program yang berada pada status tertentu dalam rangkaian eksekusinya. Di dalam bahasan Sistem Operasi, kita lebih sering membahas proses dibandingkan dengan program. Pada Sistem Operasi modern, pada satu saat tidak seluruh program dimuat dalam memori, tetapi hanya satu bagian saja dari program tersebut. Sedangkan bagian lain dari program tersebut tetap beristirahat di media penyimpan disk. Hanya pada saat dibutuhkan saja, bagian dari program tersebut dimuat di memory dan dieksekusi oleh prosesor. Hal ini sangat menghemat pemakaian memori.

Beberapa sistem hanya menjalankan satu proses tunggal dalam satu waktu, sedangkan yang lainnya menjalankan multi-proses dalam satu waktu. Padahal sebagian besar sistem komputer hanya memiliki satu prosesor, dan sebuah prosesor hanya dapat menjalankan satu instruksi dalam satu waktu. Maka bagaimana sebuah sistem prosesor tunggal dapat menjalankan multi-proses? Sesungguhnya pada granularity yang sangat kecil, prosesor hanya menjalankan satu proses dalam satu waktu, kemudian secara cepat ia berpindah menjalankan proses lainnya, dan seterusnya. Sehingga bagi penglihatan dan perasaan pengguna manusia, seakan-akan prosesor menjalankan beberapa proses secara bersamaan.

Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga merubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya).
Status Proses

Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:

1. Ready, yaitu status dimana proses siap untuk dieksekusi pada giliran berikutnya
2. Running, yaitu status dimana saat ini proses sedang dieksekusi oleh prosesor
3. Blocked, yaitu status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas

HOTSPOT AREA ?

Apa itu Hot Spot?

Assalaamu’alaikum wr wb

Hotspot (Wi-Fi) adalah salah satu bentuk pemanfaatan teknologi Wireless LAN pada lokasi-lokasi publik seperti taman, perpustakaan, restoran ataupun bandara. Pertama kali digagas tahun 1993 oleh Brett Steward. Dengan pemanfaatan teknologi ini, individu dapat mengakses jaringan seperti internet melalui komputer atau laptop yang mereka miliki di lokasi-lokasi dimana hotspot disediakan.

Hotspot berfungsi sebagai pusat pemancar/penerima jaringan LAN yang kemudian hotspot tersebut biasanya terhubung ke internet. Sehingga laptop yang berada pada area Hotspot dan kemudian terhubung dengan jaringan hotspot itu maka biasanya akan bisa terhubung ke internet.

Hanya ada dua macam hotspot yang gratis dan yang bayar. Yang gratis dengan terhubung ke hotspot maka kamu bisa langsung terhubung ke internet, sedangkan yang bayar kamu harus membeli semacam voucher atau memiliki account agar kamu dapat menikmati faslilitas internet melalui hotspot tersebut

ANDROID ?

Apa itu Android ?

Android merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi, middleware dan aplikasi kunci yang di release oleh Google. Saat ini disediakan Android SDK (software Development kit) sebagai alat bantu dan API diperlukan untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java.

Features :

* Framework Aplikasi yang mendukung penggantian komponen dan reusable.
* Mesin virtual Dalvik dioptimalkan untuk perangkat mobile
* Integrated browser berdasarkan engine open source WebKit
* Grafis yang dioptimalkan dan didukung oleh perpustakaan grafis 2D, grafis 3D berdasarkan spesifikasi opengl ES 1,0 (Opsional akselerasi hardware)
* SQLite untuk penyimpanan data
* Media Support yang mendukung audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
* GSM Telephony (tergantung hardware)
* Bluetooth, EDGE, 3G, dan WiFi (tergantung hardware)
* Kamera, GPS, kompas, dan accelerometer (hardware tergantung)
* Lingkungan Development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk Eclipse IDE


Emulator Phone


Framework Aplikasi :

Pengembang memiliki akses penuh framwork API yang sama yang digunakan oleh aplikasi inti. Arsitektur aplikasi dirancang agar komponen dapat digunakan kembali (reuse) dengan mudah. setiap aplikasi dapat memanfaatkan kemampuan ini dan aplikasi yang lain mungkin akan memanfaatkan kemampuan ini (sesuai dengan batasan keamanan yang didefinisikan oleh framework). Mekanisme yang sama memungkinkan komponen untuk diganti oleh pengguna.
Semua aplikasi yang merupakan rangkaian layanan dan sistem, termasuk:

* View Set kaya dan extensible yang dapat digunakan untuk membangun aplikasi, termasuk daftar, grids, kotak teks, tombol, dan bahkan sebuah embeddable web
* Content Provider yang memungkinkan aplikasi untuk mengakses data (seperti dari daftar kontak telp) atau dari data mereka sendiri
* Resource Manager, yang menyediakan akses ke kode sumber non-lokal seperti string, gambar, dan tata letak file
* Notifikasi Manager yang memungkinkan semua kustom aplikasi untuk ditampilkan dalam alert status bar
* An Activity Manager yang mengelola siklus hidup aplikasi dan menyediakan navigasi umum backstack

Android Runtime

Android terdiri dari satu set core libraries yang menyediakan sebagian besar fungsi yang tersedia dalam core libraries dari bahasa pemrograman Java. Setiap menjalankan aplikasi Android sendiri dalam proses, dengan masing-masing instance dari mesin virtual Dalvik (Dalvik VM). Dalvik dirancang agar perangkat dapat menjalankan multiple VMs secara efisien. Mesin Virtual Dalvik dieksekusi dalam Dalvik executable (.dex), sebuah format yang dioptimalkan untuk memori yang kecil. Dalvik VM berbasis, berjalan dan dikompilasi oleh compiler bahasa Java yang telah ditransformasikan ke dalam .dex format yang disertakan oleh tool "dx".
Dalvik VM bergantung pada kernel Linux untuk berfungsi , seperti threading dan manajemen memori tingkat rendahnya .

Linux Kernel

Android bergantung pada Linux Versi 2.6 untuk inti sistem pelayanan seperti keamanan, manajemen memori, proses manajemen, susunan jaringan, dan driver model. Kernel juga bertindak sebagai lapisan yang abstak antara hardware dan software stacknya.

APA ITU PROXY SERVER

Proxy Server: Apa dan Bagaimana?


Anda mungkin pernah mendengar tentang proxy server, tetapi apa itu sebenarnya? Dan bagaimana cara kerjanya? Apakah ia hanya untuk mempercepat koneksi ke Internet?

Proxy server mula-mula dikembangkan untuk menyimpan halaman web yang sering diakses. Pada masa awal Internet, koneksi sangat lambat, Internet masih relatif kecil, dan halaman web masih statis. Keseluruhan Internet hanya terdiri dari beberapa ribu situs yang sebagian besar untuk para ilmuwan dan akademisi. Kapanpun ada berita penting pada suatu situs web, banyak ilmuwan dari organisasi yang sama akan mengunjungi halaman tersebut (berapa kali Anda memforward link di dalam perusahaan Anda?).

Proxy dan Web Caching
Dengan menyimpan halaman tersebut pada server lokal, proxy dapat menghilangkan akses Internet yang berlebih untuk mengambil kembali halaman yang sama berulang-ulang. Jadi, proxy mula-mula sangat efektif untuk web caching. Namun, Internet sekarang sudah cepat, halaman web bersifat dinamis dan kepentingan user di dalam satu organisasi hanya terdiri dari ratusan halaman web. Faktor-faktor ini menyebabkan caching proxy menjadi tidak efektif, kecuali pada organisasi yang sangat besar atau ISP. Meskipun semua browser standar mempunyai dukungan terhadap proxy server, sejak 1996 jarang digunakan.

Proxy = HTTP?
Banyak alternatif layanan proxy, mulai dari fungsi filter pada Application layer untuk firewall seperti Checkpoint Firewall-1, sampai aplikasi umum yang murni “hanya proxy” seperti WinGate dan proxy satu layanan seperti Jigsaw untuk HTTP.

Proxy server sering kali dihubungkan dengan layanan HTTP karena proxy kali pertama dikembangkan untuk layanan ini. Sejak saat itu, fungsi proxy telah diaplikasikan ke layanan Internet lain yang paling umum. Contoh pada artikel ini akan menggunakan layanan HTTP, tetapi fungsionalitas pada umumnya sama dengan layanan yang lain.

Bagaimana Cara Kerja Proxy?
Proxy bekerja dengan mendengarkan request dari client internal dan mengirim request tersebut ke jaringan eksternal seolah-olah proxy server itu sendiri yang menjadi client. Pada waktu proxy server menerima respon dan server publik, ia memberikan respon tersebut ke client yang asli seolah-olah ia public server.

Proxy dan Keamanan
Internet yang sekarang juga mempunyai cirinya sendiri, dan proxy server menunjukkan efek samping yang sungguh tak terduga: mereka dapat menyembunyikan semua user di belakang satu mesin, mereka dapat memfilter URL, dan mereka dapat membuang content yang mencurigakan atau ilegal. Jadi meskipun mula-mula dibuat sebagai cache nonsekuriti, tujuan utama proxy server sekarang menjadi firewalling.

Proxy server memperbarui request layanan pada jaringan eksternal atas nama client mereka pada jaringan private. Ini secara otomatis menyembunyikan identitas dan jumlah client pada jaringan internal dari jaringan eksternal. Karena posisi mereka di antara client internal dan server publik, proxy juga dapat menyimpan content yang sering diakses dari jaringan publik untuk mengurangi akses ke jaringan publik tersebut. Kebanyakan implementasi nyata proxy sekuriti meliputi pemilteran paket dan Network Address Translation untuk membangun firewall yang utuh. Teknologi tersebut dapat digabungkan dengan proxy untuk menghilangkan serangan yang terhadapnya proxy rentan.

Menyembunyikan Client
Fitur keamanan utama proxy server adalah menyembunyikan client. Seperti Network Address Translation, proxy server dapat membuat seluruh jaringan internal muncul sebagai satu mesin dari Internet karena hanya satu mesin yang melewatkan request ke Internet.

Seperti Network Address Translatation, proxy server mencegah host eksternal untuk mengakses layanan pada mesin internal. Pada proxy server, tidak ada routing ke client karena domain alamat jaringan internal dan eksternal bisa saja tidak kompatibel dan karena transport layer routing tidak ada di antara kedua jaringan.

Proxy melakukan fitur ini dengan memperbarui request, bukan mengganti dan menghitung ulang header alamat. Sebagai contoh, pada waktu client membuat request melalui proxy server, proxy server menerima request tersebut seolah-olah web server tujuan pada jaringan internal. Ia kemudian memperbarui request ke jaringan eksternal seolah web browser biasa. Pada waktu proxy menerima respon dari web server yang sebenarnya, ia memberikan respon tersebut kepada client internalnya. Hanya HTTP yang dilewatkan melalui proxy, bukan TCP atau IP. TCP/IP (dan protokol low-level lainnya) diperbarui oleh proxy; mereka tidak akan dilewatkan melalui proxy.

Aspek lain dari penyembunyian client adalah penyebaran koneksi; proxy server dapat digunakan untuk membagi satu koneksi Internet dan alamat IP ke seluruh jaringan. Oleh karena itu, proxy server seperti WinGate sangat populer di lingkungan rumahan dan kantor kecil di mana hanya ada satu koneksi dial-up atau dedicated yang tersedia.

Pemblokiran URL
Pemblokiran URL memungkinkan administrator untuk menolak situs tertentu berdasarkan URL mereka. Secara teori, ini akan menjauhkan pegawai Anda dari situs web yang tidak boleh mereka akses. Fungsi ini mudah diimplementasikan. Proxy mengecek setiap request dengan daftar halaman yang ditolak sebelum ia memperbarui request tersebut. Jika URL diblokir, proxy tidak akan meminta atau memberikan halaman tersebut.

Namun, pemblokiran URL mudah diatasi, karena situs web bisa ditulis dengan menggunakan alamat IP atau bahkan keseluruhan nomor alamat. User dapat mengetik apa saja dalam web browser mereka untuk mengakses halaman yang sama, namun URL blocker Anda (mungkin) hanya akan mengecek alamat lengkap URL.

Masalah lain dengan pemblokiran URL adalah memperbarui situs yang diblokir. Situs seperti hacking, pornografi, dan situs game mempunyai masa hidup yang singkat, mereka dapat muncul dan hilang dengan cepat. Sulit rasanya untuk memblokir mereka dengan database pemblokiran URL Anda. Kebanyakan orang akan menggunakan search engine atau berita Usenet untuk mengetahui keberadaan situs.

Pemilteran Content
Karena proxy memperbarui semua muatan protokol dan protokol spesifik, proxy dapat digunakan untuk mencari muatan content yang mencurigakan. Ini berarti Anda dapat mengonfigurasi layanan proxy HTTP untuk mempreteli kontrol ActiveX, applet Java, atau bahkan gambar berukuran besar jika Anda rasa mereka bisa menyebabkan masalah keamanan. Anda juga bisa menggunakan proxy SMTP utuk mempreteli attachment berupa file executable dan file arsip zip jika Anda rasa mereka menyebabkan masalah.

Pemfilteran content juga dapat digunakan untuk mengecek halaman web akan adanya kata atau kalimat tertentu, seperti merk dagang kompetitor Anda atau sejumlah berita hangat. Anda harus memfilter control ActiveX, applet Java, dan file executable dalam e-mail karena mereka dapat digunakan untuk menginstalasi Trojan horse.

Jika ada user yang perlu mentransfer file executable, minta mereka untuk mentransfernya dalam file zip atau gunakan BinHex atau encoder yang lain untuk mentransfernya dalam format teks. File akan perlu di-decode, sehingga mencegah pentransferan virus atau Trojan horse.

Pengecekan Konsistensi
Pengecekan konsistensi merupakan pengecekan content protokol untuk memastikan itu dapat dimengerti oleh protokol. Pengecekan konsistensi memastikan bahwa jenis content tertentu tidak dapat digunakan untuk mengeksploitasi kelemahan sistem keamanan dalam jaringan internal Anda.

Sebagai contoh, daemon SMTP Sendmail Unix dulunya terkenal peka terhadap masalah buffer overflow. Ini terjadi pada waktu e-mail dikirim dan membutuhkan waktu lebih lama dari yang ditentukan. Sendmail akan mengalokasikan bagian memory sebesar yang diminta oleh e-mail tersebut, tetapi kemudian memeriksa e-mail sampai akhirnya tiba di bagian akhir. Jika di antara bagian yang diminta dan bagian akhir berisi kode executable, hacker bisa mendapatkan akses root ke e-mail server Anda.

Anda tentu pernah mendengar tentang banyaknya jumlah eksploitasi buffer overflow yang dilakukan oleh hacker untuk melawan IIS. Dengan menggunakan URL yang lebih panjang dari yang bisa ditangani IIS dan eksploitasi terhadap DLL pendukung, hacker dapat membuat serangan otomatis terhadap IIS yang bekerja sebagai worm pada Internet dan menyebabkan kerusakan secara luas. Microsoft telah meluncurkan perbaikan keamanan untuk mengatasi masalah ini.

Pengecekan konsistensi dengan proxy dapat memastikan bahwa masalah semacam ini bisa dihilangkan pada proxy sehingga mereka tidak akan mempengaruhi mesin internal. Sayangnya, masalah yang harus dicek biasanya tidak diketahui sampai hacker mengeksploitasi mereka, jadi kebanyakan pengecekan konsistensi hanya dilakukan setelah ditemukan adanya eksploitasi.

Pemblokiran Routing
Paket Transport layer perlu diarahkan karena request semuanya diperbarui. Hal ini menghilangkan eksploitasi Transport layer seperti routing, fragmentasi, dan beragam serangan denialof-service. Dengan menghilangkan routing, Anda juga dapat memastikan bahwa semua protokol yang belum Anda tentukan tidak akan dilewatkan ke jaringan publik. Pemblokiran routing mungkin merupakan keuntungan proxy server yang paling penting. Karena paket TCP/IP sebenarnya lewat antara jaringan internal dan eksternal, banyak serangan denial-of-service dan eksploitasi yang dapat dicegah.

Sayangnya, pemblokiran routing tidak begitu sering digunakan karena banyaknya protokol yang ada. Sedapat mungkin jangan perbolehkan paket low-level melewati proxy server kita. Kebanyakan proxy server memperbolehkan Anda untuk membuat proxy TCP generik untuk semua port yang enggunakan proxy SOCKS generik atau utiiliti redir Unix. Proxy generik ini, meskipun mereka tidak dapat melakukan pemfilteran content, tetapi memungkinkan Anda untuk mencegah paket TCP/IP berlalu-lalang antarjaringan Anda.

Logging dan Alerting
Manfaat keamanan terakhir dari proxy adalah fasilitas logging dan alerting yang mereka sediakan. Proxy memastikan bahwa semua content mengalir melalui satu poin, yang bisa
menjadi tempat pemeriksaan data jaringan. Kebanyakan proxy server akan mencatat penggunaan proxy oleh user dan dapat dikonfigurasi untuk mencatat situs yang mereka kunjungi. Ini akan memungkinkan Anda untuk mengatur ulang cara browsing user jika Anda curiga akan adanya aktivitas yang ilegal atau tidak semestinya.

Fasilitas alert disediakan oleh beberapa proxy untuk memperingatkan Anda atas serangan yang terjadi, meskipun proxy umumnya bukan sasaran penyerangan. Namun, fasilitas ini bisa digunakan untuk meningkatkan kewaspadaan Anda pada interface eksternal, yang sering kali dicoba untuk dieksplotiasi oleh hacker.

Proxy dan Kinerja
Selain aspek keamanan, proxy server juga dapat memberikan peningkatan kinerja yang penting. Pertama, proxy dapat menyimpan data yang sering direquest untuk meningkatkan kinerja dengan menghilangkan akses berlebih ke jaringan eksternal (yang kecepatannya lebih lambat). Kedua, proxy dapat menyeimbangkan beban service ke sejumlah server internal.

Caching
Seperti yang telah disebutkan di bagian awal artikel ini, proxy mula-mula dikembangkan sebagi peningkat kinerja, bukan sebagai perangkat pengaman. Pada awal Internet, hanya ada ribuan situs web. Mereka kebanyakan bersifat ilmiah dan tidak sering berubah. Karena koneksi ke Internet lambat, proxy dapat digunakan untuk menyimpan sebagian besar Internet secara lokal, sehingga pengguna internal cukup browsing ke proxy lokal. Content tidak berubah dengan sangat cepat, jadi ini masih masuk akal.

Sekarang caching hanya masuk akal jika ada user dalam jumlah besar yang mengakses halaman web yang sama berulang-ulang. Pola penggunaan seperti ini sekarang sudah jarang, jadi segi caching proxy server sudah mulai usang.

Dengan e-commerce yang semakin umum, caching akan kembali menjadi fungsi yang penting karena banyak orang akan melakukan pekerjaan mereka dengan menghadapi beberapa situs yang sering diakses. Sebagai contoh, ambil agen perjalanan yang menggunakan Expedia.com dan Travelocity.com untuk melakukan pekerjaan mereka. Banyak agen akan mengakses dua situs yang sama berulang-ulang, sehingga menyimpan elemen situs utama, gambar, dan applet adalah masuk akal.

Reverse Proxy Load Balancing
Proxy server sekarang ini dapat digunakan untuk melakukan “reverse proxy,” atau menyediakan layanan proxy ke client eksternal untuk server internal. Fungsi ini digunakan untuk menyeimbangkan beban klien ke sejumlah web server. Banyak situs web yang fungsionalitasnya tinggi menggunakan aplikasi kompleks seperti ISAPI, Active Server Pages, Java servlet, atau CGI. Aplikasi ini dijalankan pada server, sehingga mereka sangat mengurangi banyaknya client yang mampu ditangani oleh satu server. Sebagai contoh, Windows 2000 server yang menjalankan IIS yang bisa menangani sampai 100.000 browser untuk halaman HTML standar hanya bisa menangani 5000 browser halaman ASP.

Ini berarti bahwa kebanyakan fungsi e-commerce sebenarnya tidak bisa ditangani oleh satu server, jadi situs tersebut harus dijalankan secara paralel ke sejumlah mesin. Sebagai contoh, http://www.microsoft.com/ dijalankan pada 30 server DNS yang identik. DNS menyediakan skema dasar load-sharing di mana akses ke nama DNS akan mendapatkan salah satu alamat IP, tetapi ini belum benar-benar menyeimbangkan beban.

Proxy server dapat digunakan untuk merespon ke satu alamat IP dan kemudian mengarahkan koneksi client ke salah satu server di belakangnya. Proxy server dapat menggunakan beberapa tolak ukur yang disediakan oleh semua web server untuk mengtahui server mana yang mempunyai sisa kapasitas paling banyak. Setiap client yang terhubung kemudian dapat diarahkan ke web server mana pun yang mempunyai kapasitas yang cukup untuk menanganinya.