بالا بردن آپ تایم سرور

من از یکی پرسدم گفتم با خاصیت clustring این کار انجام میشه کسی میدونه چطوریه؟


هاستينه عزيز اتفاقا منم فکر مي کنم شما هنوز مفهوم اين سوال رو متوجه نشديد!
ايشون همون اول clustring رو مطرح کردند و بار ها هم گفتند که می خوان اين سرويس هيچ قطعی نداشته باشه! (که در روش شما با توجه به وابستگی تمام سرور ها به سرور database با خارج از سرويس شدن اين سرور تمامی سرور های ديگه عملا بدون استفاده هستند.)
ضمنا من هنوز جواب سوال شما در مورد استفاده شما از multilayer switch رو نشنيدم؟

و اين هم مطلبی که مصطفی به اون اشاره کرد:
کد:
An alternate method of load balancing which does not necessarily require a dedicated software or hardware node, is called round robin DNS. In this technique, multiple IP addresses are associated with a single domain name (like www.example.org). Clients themselves are expected to choose which server to connect to. Unlike the use of a dedicated load balancer, this technique is not "transparent" to clients, because it exposes the existence of multiple backend servers. The technique has other advantages and disadvantages, depending on the degree of control over the DNS server and the granularity of load balancing which is desired.
لينک:
کد:
http://en.wikipedia.org/wiki/Load_balancing_%28computing%29

اتفاقا ما هم اين روزها سرمون شلوغ هستش اما سعی می کنيم در تاپيک هايي که شرکت مي کنيم مطالعه کنيم و جواب مستدل بديم :) (و البته لينک های مستدل هم قرار بديم تا خدای نکرده برداشت اشتباه نشه.)


با تشکر
علی اميری
 

amiri27

Member
از ویندوز NT4 هم قابلیت Clustering و هم قابلیت LoadBalancing و هم قابلیت Failover Redundency وجود داشته . رجوع کنید به لینک زیر:
http://www.microsoft.com/technet/archive/winntas/deploy/ntopclst.mspx?mfr=true

در مورد لایه ها هم فکر نمی کنم زمانی که داریم در مورد یک پروتوکل به نام DNS صجبت می کنیم دیگه لایه های OSI مطرح باشه و اصلا فلسفه کار کردن پروتوکل ها بر اساس همین ۷ لایه مطرح هست ! حالا نمی دونم شما بر اساس کدوم استاندارد می یاید و این موضوع رو در مورد یک پروتوکل مطرح می کنید و تازه در مورد امنیت اون رو نه تنها زیر سوال می برید بلکه به مقاله ای که عملا یادتون نیست ارجاع میدید !

فکر می کنم کمی مطالعه در مورد این مسایل و درک تفاوت میان پروتوکل و لایه ها مفید باشه !


با تشکر
مصطفی اميری
 
آخرین ویرایش:
ali_amiri113; گفت:
هاستينه عزيز اتفاقا منم فکر مي کنم شما هنوز مفهوم اين سوال رو متوجه نشديد!
ايشون همون اول clustring رو مطرح کردند و بار ها هم گفتند که می خوان اين سرويس هيچ قطعی نداشته باشه! (که در روش شما با توجه به وابستگی تمام سرور ها به سرور database با خارج از سرويس شدن اين سرور تمامی سرور های ديگه عملا بدون استفاده هستند.)
ضمنا من هنوز جواب سوال شما در مورد استفاده شما از multilayer switch رو نشنيدم؟
دوست عزیز من اصلا با مفهوم سوال کار ندارم من در پستی مشاهده کردم که عبارت کلاستر مترادف با لود بالانسینگ آورده شده که گوشزد کردم این دو مورد با هم متفاوت هستند(ضمن اینکه لود بالانسینگ دان تایم نداره)
اتفاقا ما هم اين روزها سرمون شلوغ هستش اما سعی می کنيم در تاپيک هايي که شرکت مي کنيم مطالعه کنيم و جواب مستدل بديم :) (و البته لينک های مستدل هم قرار بديم تا خدای نکرده برداشت اشتباه نشه.)

اینکه خیلی خوبه ....اینکه می بینید من لینک نمی دم به خاطر اینه که حرفهایی که می زنم از تجربیات و مطالعات تحصیلی خودمه نه از سرچ در گوگل و اون هم سایتی مثل wikipedia که صحت مطالبش توسط هیچ سازمان و نهادی به صورت 100% تایید نشده

به هر حال شما یا دوست دیگری اومده بود لود بالانسینگ رو با کلاستر یکی تعبیر کرده بود که با مطالب مستند که تو همون wikipedia که شما بهش استناد می کنید هم موجوده تفاوت این دو با هم شرح داده شد ( مزایا و معایب مورد بحث نیست)

از طرفی مطالبی که شما ارائه کردید مربوط به کلاسترینگ بود که تایید شد:)
 
جالبه در tcpip ما 5 لایه داریم که احتمالا حواستون نبوده و 7 لایه عنوان کردید:)

اون ریسکی که گفتم از خود لایه نیست از معماری cluster بود که در این لایه کار می کنه
 
راستی جناب علی امیری مولتی لیر سوئیچ سخت افزار نیست که من در مورد استفادش توضیح بدم
نمی دونم از جمله من چه جوری این برداشت رو کردید!:

ضمنا load balancing معمولا توسط یک سخت افزار انجام میشه و یک سوئیچ چند لایه ای داره (multilayer switch) اما کلاستر نرم افزاریه و از این سوئیچ هم استفاده نمی کنه
 

amiri27

Member
جالبه که شما به جای استناد به مدارک معتبر روی نت سعی می کنید که این منابع رو رد کنید.

البته اگه دوست دارید از کتاب های Mspress براتون مدرک معتبرش رو بیارم و دقیقا بهتون آدرس صفحه کتاب ها رو بدم که برای مطالعه مناسب هست. البته اگه در مورد کتاب های MSPress هم این مطلب رو نفرمایید که این مدارک هم معتبر نیستند چرا که لینک های wikipedia در این باره دقیقا با این مدارک همخونی داره ! فکر می کنم ارجاع به یک منبع حتی اگر هم اشتباه باشه خیلی بهتر از بی مدرک و استناد حرف زدن هستش !

Load Balancing بدون داشتن Cluster های مختلف از دیتاها عملا بی معنی هستش چرا که مثلا در سناریو مطرح شده از سمت شما زمانی که یا وب سرور و یا Database Server داون باشه دیگه عملا سایت در دسترس نخواهد بود !


با تشکر
مصطفی امیری
 
جالبه که شما به جای استناد به مدارک معتبر روی نت سعی می کنید که این منابع رو رد کنید.

البته اگه دوست دارید از کتاب های Mspress براتون مدرک معتبرش رو بیارم و دقیقا بهتون آدرس صفحه کتاب ها رو بدم که برای مطالعه مناسب هست. البته اگه در مورد کتاب های MSPress هم این مطلب رو نفرمایید که این مدارک هم معتبر نیستند چرا که لینک های wikipedia در این باره دقیقا با این مدارک همخونی داره ! فکر می کنم ارجاع به یک منبع حتی اگر هم اشتباه باشه خیلی بهتر از بی مدرک و استناد حرف زدن هستش !

Load Balancing بدون داشتن Cluster های مختلف از دیتاها عملا بی معنی هستش چرا که مثلا در سناریو مطرح شده از سمت شما زمانی که یا وب سرور و یا Database Server داون باشه دیگه عملا سایت در دسترس نخواهد بود !


با تشکر
مصطفی امیری
نمی دونم شما چه اصراری به پیچیده کردن موضوع دارید!
من مطالب شما رو در مورد کلاستر تایید کردم اما شما هنوز هیچ مدرک مستندی دال بر این موضوع که کلاسترینگ و لود بالانسینگ یکی هستند ارائه نکردید که ما روی معتبر بودن منبع شما بحثی کرده باشیم!:neutral:


ضمن اینکه تاکید می کنم کلاسترینگ به تنهایی قابلیت لود ترافیک و کنترل نداره و از لود بالانسینگ برای این کار استفاده می کنه و اون کلاستری که شما و دوست دیگرمون روش بحث کردند قابلیت لود بالانسینگ بهش اضافه شده
 

amiri27

Member
جالبه در tcpip ما 5 لایه داریم که احتمالا حواستون نبوده و 7 لایه عنوان کردید:)

اون ریسکی که گفتم از خود لایه نیست از معماری cluster بود که در این لایه کار می کنه

TCP/IP ، IPX/SPX و ... Protocol Suite های استانداردی هستن که بر اساس 7لایه OSI بنا ریزی شده اند. که فکر می کنم کسایی که لا اقل 20-30 صفحه اول کتاب های شبکه رو هم مطالعه کرده باشن هم می دونن همه این Protocol Suite ها باید این 7 لایه رو داشته باشن که اجازه دارن این 7 لایه رو با تغییر نام با هم دیگه ترکیب کنن. رجوع کن به صفحه 41 از کتاب 70-270 از مجموعه Mspress و یا صفحه 23 از کتاب CCNA و یا صغحه زیر از Wikipedia:
http://en.wikipedia.org/wiki/TCP/IP_model

این هم توضیحات تکمیلی در مورد OSI Model

http://en.wikipedia.org/wiki/OSI_Model


توضیح داده شده که چطور 7 لایه OSI در TCP/IP Model پیاده سازی شده !

در ضمن فقط این رو هم باید بگم که TCP/IP دارای 4 لایه هست نه 5 لایه !


در مورد ریسک هم باز هم دارید تفاوت لایه و پروتوکل رو اشتباه بیان می کنید .


با تشکر
مصطفی امیری
 
آخرین ویرایش:
ضمنا load balancing معمولا توسط یک سخت افزار انجام میشه و یک سوئیچ چند لایه ای داره (multilayer switch) اما کلاستر نرم افزاریه و از این سوئیچ هم استفاده نمی کنه


از جمله شما این طور برداشت میشه که منطور شما از سخت افزار همون multilayer switch ای هستش که ذکر کردید.
خدا رو شکر که برداشت من اشتباه بود. حالا که خدا رو شکر این سوال روشن شد میشه با مدارک مستدل بفرمایید منظور شما از این multilayer switch که اینجا ذکر کردید چی هستش ؟
و البته به صورت جداگانه سخت افزار مورد نیاز رو هم ذکر کنید (البته امیدوارم منظور شما از این سخت افزار اضافه کردن دو تا کارت شبکه روی دو سرور و اتصال مستقیم اونها نباشه) و در مورد این سخت افزاری که گفتید (با ذکر منابع معتبر انشالا) توضیح بدید.


ممنون میشم
علی امیری
 
TCP/IP ، IPX/SPX و ... Protocol Suite های استانداردی هستن که بر اساس 7لایه OSI بنا ریزی شده اند. که فکر می کنم کسایی که لا اقل 20-30 صفحه اول کتاب های شبکه رو هم مطالعه کرده باشن هم می دونن همه این Protocol Suite ها باید این 7 لایه رو داشته باشن که اجازه دارن این 7 لایه رو با تغییر نام با هم دیگه ترکیب کنن. رجوع کن به صفحه 41 از کتاب 70-270 از مجموعه Mspress و یا صفحه 23 از کتاب CCNA و یا صغحه زیر از Wikipedia:
http://en.wikipedia.org/wiki/TCP/IP_model

این هم توضیحات تکمیلی در مورد OSI Model

http://en.wikipedia.org/wiki/OSI_Model


توضیح داده شده که چطور 7 لایه OSI در TCP/IP Model پیاده سازی شده !

در ضمن فقط این رو هم باید بگم که TCP/IP دارای 4 لایه هست نه 5 لایه !


در مورد ریسک هم باز هم دارید تفاوت لایه و پروتوکل رو اشتباه بیان می کنید .


با تشکر
مصطفی امیری


البته منابع مستدلی که مصطفی ذکر کرد منبع فارسی هم داره:
شبکه های کامپیوتری نوشته تنن بام ترجمه مهندس جعفر نژاد قمی انتشارت علوم رایانه

و البته این هم ویکی پدیا که شاید برای شما معتبر نباشه (اما ممکنه برای بقیه کاربران معتبر باشه)
کد:
http://fa.wikipedia.org/wiki/%D9%85%D8%AF%D9%84_%D8%AA%DB%8C%E2%80%8C%D8%B3%DB%8C%E2%80%8C%D9%BE%DB%8C/%D8%A2%DB%8C%E2%80%8C%D9%BE%DB%8C
http://fa.wikipedia.org/wiki/%D9%85%D8%AF%D9%84_%D9%85%D8%B1%D8%AC%D8%B9_%D8%AA%DB%8C%E2%80%8C%D8%B3%DB%8C%E2%80%8C%D9%BE%DB%8C/%D8%A2%DB%8C%E2%80%8C%D9%BE%DB%8C
http://fa.wikipedia.org/wiki/%D9%85%D8%AF%D9%84_%D9%85%D8%B1%D8%AC%D8%B9_OSI

با تشکر
علی امیری
 
دلیل این همه حایشه و طفره رفتن ها رو نمی فهمم در حالی که بحث اصلی بر روی کلاسترینگ و لود بالانسینگ بوده شما مباحث لایه های شبکه رو پیش می کشید!

من به شما گفتم منبع واسه لایه ها به من بدید ما اصلا بحثی در این زمینه کردیم؟!

شما بحث اصلی رو ول کردید چسبیدین به این!

شما گفتین که کلاسترینگ با لود بالانسینگ فرق نداره ابداع کننده این روش ها هم من نبودم که تعصبی داشته باشم ..اصلا این مورد بی معنی هست من گفتم با توجه به اطلاعاتم این دو با هم متفاوت هستند و شما و دوست دیگرمون فرمودید خیر یکی هستند...قبول منبع معتبر بدین که من هم از این اشتباه در بیام
من هم می گم این دو تا با هم فرق دارن که علاوه بر موارد قبلی بفرمایین این هم منابع معتبر دیگه!:

A web server handles HTTP (Hypertext Transfer Protocol) requests sent to it by web browsers. When you type in a URL —http://www.digital-web.com, for example—your computer sends out a request to look up the servers needed to handle requests and send responses back quickly. The technique for determining how to route requests to the cluster of web servers efficiently is called load balancing.

Load Balancing Web Applications
Load balancing increases the reliability of a web site by routing requests to other servers in the cluster when one of the servers is too busy or fails. There are many techniques for achieving load balancing, but generally they should meet the following requirements:

1. Distribute loads among a cluster of application servers.
2. Handle failover of an application server gracefully.
3. Ensure the cluster of servers appears as a single server to the end user.

A popular yet simple approach to balancing web requests is called round-robin DNS. This approach involves creating multiple DNS entries in the DNS record for the domain. For example, let’s say we want to balance the load on www.myloadbalancedwebsite.com, and we have two web servers with IP addresses of 64.13.192.120 and 64.13.192.121, respectively. To create a round-robin DNS to distribute requests, we simply create the following DNS entry:

www.myloadbalancedwebsite.com 64.13.192.120
www.myloadbalancedwebsite.com 64.13.192.121

As the end user’s web browser sends a request for the DNS record for www.myloadbalancedwebsite.com, the entry that is returned first will alternate. Since your browser uses the first entry returned, the requests are distributed evenly among our two servers. Unfortunately, the key drawback to round-robin DNS is that it fails the second requirement mentioned above—if one of the two servers fail, the DNS server will continue to send requests to it, and half of your end users will experience downtime.

Another popular load balancing technique involves handling requests with a single server or router dedicated to load balancing. Dedicated hardware equipment and software-based solutions such as F5 BIG-IP and Linux Virtual Server Project are examples of this type of solution. The dedicated load balancer takes requests and distributes them among a cluster of web servers. The load balancer detects if a server has failed, and routes requests to other servers. Also, to ensure that there is no single point of failure, a backup dedicated load balancer is available to take over in case the primary one fails.

The downsides to this approach are:

1. There is a limit to the number of requests the load balancer itself can handle. However, this problem can be resolved with the combination of round-robin DNS and dedicated load balancers.
2. There is an extra cost related to operating a dedicated load balancer, which can run into tens of thousands of dollars. The backup load balancer generally does nothing other than wait for the primary to fail.

Client Side Load Balancing

There is an approach to load balancing modern web applications that does not require any load-balancing hardware, and handles failure of servers more gracefully than round-robin DNS. Before delving into the details, let us consider a desktop application that needs to connect to servers on the internet to retrieve data. If our theoretical desktop application generates more requests to the remote server than it can handle using a single server, we will need a load balancing solution. Could we use the round-robin DNS and/or dedicated load balancer approach describe above? Of course, but there are other approaches that are more robust and less costly.

Instead of letting the client know of only one server domain from which to retrieve data, we can provide many servers—s1.myloadbalancedsite.com, s2.myloadbalancedsite.com, and so on. The desktop client randomly selects a server and attempts to retrieve data. If the server is not available, or does not respond in a preset time period, the client can select another server until the data is retrieved. Unlike web applications—which store the client code (JavaScript code or Flash SWF) on the same server that provides data and resource—the desktop client is independent of the server and able to load balance servers from the client side to achieve scalability for the application.

figure1.jpg


So, can we apply the same technique to web applications? Before we can answer this question, we need to establish what makes up a web application.

Web applications have inherently blurred the boundary between the client component and the server component of a typical application. Web applications written in PHP may often have the server code entwined with the client code. Even if an MVC (model-view-controller) pattern framework is applied, and good practice is followed by separating code that generates the presentation layer (HTML) from code used for backend logic, it is still the server that is generating and serving the presentation. In addition, resources such as images are served by the server as well—but with new web technologies, the boundaries have shifted. Many applications today only make AJAX or Flash remoting calls—in fact, there is a lot of similarity in the ways a standard desktop application and web applications make remote calls.

For the purposes of client-side load balancing, there are three main components to a modern web application:

1. Client-side code: JavaScript and/or SWF (for flash clients)
2. Resources: images, CSS (Cascading Style Sheets), audio, video, and HTML documents
3. Server-side code: backend logic that generates data requested by the client

It is easier to make the client code and resources highly available and scalable than to do so for the servers—serving non-dynamic content requires fewer server resources. In addition, it is possible to put the client code on a highly reliable distribution service such as Amazon Web Services’s S3 service. Once we have client code and resources served from a highly reliable location, let us take a look at how we can load balance server clusters.

Just like the desktop client above, we can embed our list of application servers into the client code. The web client contains a file called “servers.xml”, which has a list of available servers. The client tries to communicate (whether via AJAX or Flash) with every server in the list until it finds one that responds. Our client-side process is therefore:

1. Load the file www.myloadbalancedwebsite.com/servers.xml, which is stored with the client code and other resources, and contains the list of available servers, e.g.:

<servers>
<server>s1.myloadbalancedwebsite.com</server>
<server>s2.myloadbalancedwebsite.com</server>
<server>s3.myloadbalancedwebsite.com</server>
<server>s4.myloadbalancedwebsite.com</server>
</servers>

2. The client code randomly selects servers to call until one responds. All subsequent calls use that server.
3. The client has a preset timeout for each call. If the call takes greater than the preset time, the client randomly selects another server until it finds one that responds, and uses that server for all subsequent calls.

Making Cross-Domain Calls

If you’ve been working with AJAX for any length of time, you’re probably thinking, “This won’t work, because of cross-domain browser security,” so let’s address that.

For security reasons, web browsers and Flash clients will block calls to a different domain—for example, if the client wants to talk to the server s1.myloadbalancedwebsite.com, the client code must be loaded from the same domain, s1.myloadbalancedwebsite.com. Requests from clients loaded from any other domain will be blocked. In order for the load-balancing scheme described above to work, the client code at www.myloadbalancedwebsite.com needs to be able to call services running on other sub-domains (such as s1.myloadbalancedwebsite.com).

For Flash clients, we can simply set the “crossdomain.xml” file to allow requests from *.myloadbalancedwebsite.com:

<cross-domain-policy>
<allow-access-from domain="*.myloadbalancedwebsite.com"/>
</cross-domain-policy>

For AJAX-based client code, the restriction depends on the transport we use to make server calls. If we use the Dynamic script Tag method to transport calls, there is no security issue, because we can make server calls without cross-domain security constraint issues. (However, it is generally a good idea to check the referrer header to make sure it is definitely your client that is making the server requests, for the sake of your site’s security.)

What if the application uses XMLHttpRequest? XHR strictly forbids client calls from a different domain to the server. Luckily, a workaround exists if the client and server have the same parent domain—as in our example, www.myloadbalancedwebsite.com and s1.myloadbalancedsite.com. We can make all AJAX calls to the server using an iframe loaded from the server; since browsers allow communication between scripts in an iframe, it is possible to access data received from the server calls made in the iframe if the scripts are loaded from the same parent domain. Problem solved.
Advantages of Client-Side Load Balancing

Now that we can make cross-domain calls, let us see how well our load-balancing technique meets the requirements outlined at the start of the article.

1. Distribute loads among a cluster of application servers. Since the client randomly selects the server it connects to, the loads should be distributed evenly among the servers.
2. Handle failover of an application server gracefully. The client has the ability to failover to another server when the chosen server does not respond within a preset period of time. The application server connection seamlessly fails over to another server.
3. Ensure the cluster of servers appears to the end user as a single server. In the example, the user simply points a browser to http://www.myloadbalancedwebsite.com/. The actual server used is transparent to the user.

So what are the advantages of using client-side load balancing over server-side load balancing? The obvious advantage is that a special load-balancing device is unnecessary—there is no need to configure load-balancing hardware, or to make sure that the backup functions the same as the primary load balancer. If a server is unavailable, simply remove it from the “servers.xml” file.

Another advantage is that servers do not have to be housed in the same location; since the client is selecting servers instead of having a fixed load balancer redirecting traffic, the locations of the servers are unrestricted. Servers can be in multiple datacenters in case one datacenter is not accessible. If the application requires a database on the local network, the other datacenter can still be used as a backup in case your primary one is unavailable. Changing to another datacenter is as simple as making an update to the “servers.xml” file, instead of waiting for DNS changes to propagate.
Voxlite, a Client-Side Load Balanced Web Application

Voxlite, a web-2.0 application that lets users send video messages to one another with just a browser and a webcam, is an application that uses client-side load balancing to achieve high availability and scalability. In addition, Voxlite uses the Simple Storage Service (S3) and Elastic Computing Cloud (EC2) services from Amazon Web Services.

From very early on, the S3 service presented an attractive option for storing and serving the video messages, and EC2 was naturally designed to work with the S3 service. It provides an easy and cost-effective way for Voxlite to scale to support more users. EC2 instances can be allocated at any time by simply starting a virtual machine image—each EC2 instance costs ten cents per hour, or seventy-two dollars per month. But what makes EC2 even more attractive is the computing resource is elastic; EC2 instances can be de-allocated when they are not being used. For example, if Voxlite gets more traffic during the day than in the evening, it is possible to only allocate more servers during the day, and thus, greatly increase the cost-effectiveness of the hosting solution. Unfortunately, one major drawback with EC2 is that it is not possible to architect a server-side load balancing solution that doesn’t have a single point of failure. Many web applications hosted on EC2 use a single EC2 instance with dynamic DNS to load-balance requests to a particular domain. If the instance that provides the load balancing fails, the whole system can become unavailable until the dynamic DNS maps the domain to another EC2 instance.

Using the client-side load balancing technique described above, it is possible to have a load-balanced solution with EC2 servers that has no single point of failure. To build a cluster of EC2 instances supporting client-side load balancing, Voxlite’s client code and other web resources is stored on, and served from, S3. An EC2 image with the server code is created so that whenever an EC2 instance starts, it is properly configured and ready to handle client requests. Voxlite then uses a clever technique to make the client aware of the available servers.

Earlier, I described the use of a “servers.xml” file to let the client know the list of available servers—but, with the S3 service available, there is a better way. When accessing an S3 bucket (a bucket is a term used by S3 for storing a group of files; the idea is similar to file folders) without any keys, the S3 service will simply list all the keys matching the given prefix—so, in each of Voxlite’s EC2 instances, a cron job is created that runs periodically and registers the server as a cluster member by writing an empty file with the key servers/{AWS IP address} to a publicly readable S3 bucket.

For example, if I go to the URL http://s3.amazonaws.com/voxlite/?prefix=servers, I get the following response:

<ListBucketResult>
<Name>voxlite</Name>
<Prefix>servers</Prefix>
<Marker/>
<MaxKeys>1000</MaxKeys>
<IsTruncated>false</IsTruncated>
<Contents>
<Key>servers/216.255.255.1</Key>
<LastModified>2007-07-18T02:01:25.000Z</LastModified>
<ETag>"d41d8cd98f00b204e9800998ecf8427e"</ETag>
<Size>0</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
<Contents>
<Key>servers/216.255.255.2</Key>
<LastModified>2007-07-20T16:32:22.000Z</LastModified>
<ETag>"d41d8cd98f00b204e9800998ecf8427e"</ETag>
<Size>0</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>

In this example, there are two EC2 instances in the cluster, with IP addresses of 216.255.255.1 and 216.255.255.2 respectively.

The logic for the cron job is:

1. Load and parse http://s3.amazonaws.com/voxlite/?prefix=servers.
2. If the current running instance is not listed, write an empty file to the bucket with the key servers/{IP address of EC2 instances}.
3. Verify if other servers listed in the bucket are running properly by testing the connection using the internal AWS IP address. If a connection cannot be established, remove the server key from the bucket.

Once this cron job is a part of the EC2 image, each running instance is automatically registered as an available server in the cluster. The client code (AJAX or Flash) parses the list of keys in the bucket and extracts the external AWS host name, allowing it to then randomly select a server to connect to, as described above when using the “servers.xml” file. If an EC2 instance shuts down or happens to crash, the other instances in the cluster would automatically remove its key from the bucket—the bucket would be left with only available instances. In addition, the client can select another EC2 instance in the bucket if a request does not get a response in the preset time. If the web site is getting more traffic, simply start more EC2 instances. If the load decreases, simply shut down the extra instances. By using client-side load balancing with S3 and EC2, it is easy to build an elastic, scalable and robust web application.
References and Additional Readings

* More detailed information on how to make cross domain XMLHttpRequest using iframe.
* An introduction on the dynamic script tag method and comparison to XmlHttpRequest.
* An article with detailed information on round-robin DNS and server side load balancing of web applications.
* Linux Virtual Server is a popular open source project frequently used to achieve server side load balancing for web applications.
* Amazon Web Services web site and blog has interesting information about S3 and EC2 and how companies are using them.
* A white paper on performance tuning of front end presentation layer, containing some discussions on how to efficiently serve web 2.0 client code and resources.


from:http://www.digital-web.com/articles/client_side_load_balancing
 
آخرین ویرایش:
این هم یکی از سخت افزارهای کنترل کننده ترافیک در لود بالانسینگ:Nontec Nitro Switch

Nontec Nitro Switch در دسترس بودن و کارآيي سرور در شبکه هاي محلي را بهينه مي کند و برنامه هاي کاربردي و سرورهايي که تمام درخواست هاي کاربر با محتواي صحيحح را مورد نظر قرار مي دهند، به سرعت و به طور موثري امن مي کند.
Nitro Switch بين شبکه و سرورها نصب مي شود و دائماً هر سرور و يا هر ابزار شبکه را کنترل مي کند، صحت و توان عملياتي را بررسي کرده و درخواست کاربر را به بهترين سرور مسيردهي مي کند. علاوه بر اين Nitro Switch قابليت اطمينان و سرعت را بهبود مي بخشد و مديريت شبکه را تسهيل مي کند.

Load Balancing معمولي
grafik_loadbalancing_vorher.gif


Load Balancing به همراه Securepoint و Nitro Switch
grafik_loadbalancing_nachher.gif
 
مرجع کامل به زبان فارسی:

کتاب راهنمای جامع شبکه
مترجم : ليلی قاسم زاده
تعداد صفحه ها : 992
نويسنده : کريگ زاکر
ISBN : 964-7363-79-6
قيمت : 9900 تومان
این هم عکس از جلد کتاب:
networkja.gif


این هم فهرست این کتاب
پيشگفتار



بخش‌ اول‌ ــ مباني‌ شبكه‌



فصل‌ 1 : شبكه‌ چيست‌؟

شبكه‌هاي‌ محلي‌ (LAN ها)

باند پايه‌ در مقابل‌ باند پهن‌

تبادل‌ بسته‌اي‌ در مقابل‌ تبادل‌ مداري‌

شبكه‌ و شبكه‌ تقابلي‌

كابل‌ و همبندي‌

كنترل‌ دستيابي‌ به‌ رسانه‌

آدرس‌دهي‌

تكراركننده‌، پل‌، سوئيچ‌ و مسيرياب‌

شبكه‌ گسترده‌ (WAN)

پروتكل‌ها و استانداردها

سرويس‌گيرنده‌ها و سرويس‌دهنده‌ها

سيستم‌عامل‌ها و برنامه‌ها



فصل‌ 2 : مدل‌ مرجع‌ OSI

ارتباطات‌ بين‌لايه‌اي‌

كپسوله‌كردن‌ داده‌ها

ارتباطات‌ افقي‌

ارتباطات‌ عمودي‌

واژگان‌ كپسوله‌سازي‌

لايه‌ فيزيكي‌

مشخصه‌هاي‌ لايه‌ فيزيكي‌

سيگنال‌ها در لايه‌ فيزيكي‌

لايه‌ پيوند داده‌

آدرس‌دهي‌

كنترل‌ دستيابي‌ به‌ رسانه‌

نشانگر پروتكل‌

تشخيص‌ خطا

لايه‌ شبكه‌

مسيريابي‌

تكه‌تكه‌كردن‌

پروتكل‌هاي‌ اتصال‌گرا و بدون‌ اتصال‌

لايه‌ انتقال‌

تركيبات‌ سرويس‌ پروتكل‌

عملكرد پروتكل‌ لايه‌ انتقال‌

لايه‌ نشست‌

كنترل‌ مكالمه‌

جداسازي‌ مكالمه‌

لايه‌ نمايش‌

لايه‌ كاربردي‌

پشته‌ پروتكل‌ها





بخش‌ دوم‌ ــ سخت‌افزار شبكه‌



فصل‌ 3 : آداپتورهاي‌ واسط شبكه‌

عملكرد NIC

ويژگيهاي‌ NIC

دوجهته‌ كامل‌

مديريت‌ باس‌

انجام‌ موازي‌ تكاليف‌

بيدارسازي‌ از طريق‌ LAN

IEEE 802.1p

انتخاب‌ NIC

پروتكل‌

سرعت‌ ارسال‌

واسط شبكه‌

واسط باس‌

منابع‌ سخت‌افزاري‌ مورد نياز

تغذيه‌ مورد نياز

NIC هاي‌ سرويس‌دهنده‌ در مقابل‌ NIC هاي‌ ايستگاه‌ كاري‌

NIC هاي‌ خانگي‌ و دفتري‌

درايورهاي‌ آداپتور شبكه‌



فصل‌ 4 : كابل‌كشي‌ شبكه‌

خصوصيات‌ كابل‌

استانداردهاي‌ كابل‌

ANSI/TIA/EIA-T568-A

ISO 11801E 1995

استانداردهاي‌ پروتكل‌ لايه‌ پيوند داده‌

كابل‌ كواكس‌

Thick Ethernet

Thin Ethernet

ARCnet

تلويزيون‌ كابلي‌

كابل‌ زوج‌ به‌هم‌تابيده‌

زوج‌ به‌هم‌تابيده‌ بدون‌ حفاظ (UTP)

زوج‌ به‌هم‌تابيده‌ حفاظدار (STP)

كابل‌ فيبر نوري‌

ساختار كابل‌ فيبر نوري‌

اتصال‌دهنده‌هاي‌ فيبر نوري‌

كابل‌ فيبر نوري‌ و طرح‌ شبكه‌

انواع‌ نصب‌ كابل‌

نصب‌ خارجي‌

نصب‌ داخلي‌



فصل‌ 5 : LAN هاي‌ بي‌سيم‌

كاربردهاي‌ فناوري‌ بي‌سيم‌

استانداردهاي‌ IEEE 802.11

لايه‌ فيزيكي‌

همبنديهاي‌ لايه‌ فيزيكي‌

رسانه‌هاي‌ لايه‌ فيزيكي‌

فريم‌هاي‌ لايه‌ فيزيكي‌

لايه‌ پيوند داده‌

فريم‌هاي‌ لايه‌ پيوند داده‌

كنترل‌ دستيابي‌ به‌ رسانه‌

محصولات‌ IEEE 802.11



فصل‌ 6 : ادوات‌ اتصال‌ به‌ شبكه‌

تكراركننده‌

هاب‌

هاب‌ انفعالي‌

هاب‌ تكراركننده‌

MAU هاي‌ Token Ring

هاب‌ هوشمند

انواع‌ هاب‌

انتخاب‌ هاب‌

پل‌

پل‌كردن‌ شفاف‌

پل‌كردن‌ مسير مبدأ

پل‌كردن‌ در شبكه‌هاي‌ اترنت‌ و Token Ring

مسيرياب‌

كاربردهاي‌ مسيرياب‌

عملكرد مسيرياب‌

مسيريابي‌ و ICMP

پروتكل‌هاي‌ مسيريابي‌

سوئيچ‌

انواع‌ سوئيچ‌

مسيريابي‌ در مقابل‌ سوئيچ‌كردن‌

LAN هاي‌ مجازي‌

سوئيچ‌كردن‌ در لايه‌ 3 فصل‌ 7 : شبكه‌ گسترده‌

اتصالات‌ WAN

ارتباط راه‌ دور

به‌كارگيري‌ WAN

انتخاب‌ يك‌ فناوري‌ WAN

اتصالات‌ PSTN

مالتي‌پلكسينگ‌ معكوس‌

خطوط استيجاري‌

انواع‌ خطوط استيجاري‌

سخت‌افزار خط استيجاري‌

كاربردهاي‌ خط استيجاري‌

ISDN

سرويس‌هاي‌ ISDN

ارتباطات‌ ISDN

سخت‌افزار ISDN

DSL

سرويس‌هاي‌ سوئيچ‌ بسته‌

رله‌ فريم‌

ATM

معماري‌ ATM

اشكالات‌ ATM



فصل‌ 8 : فناوريهاي‌ سرويس‌دهنده‌

خريدن‌ سرويس‌دهنده‌

استفاده‌ از چند پردازنده‌

پردازش‌ موازي‌

خوشه‌بندي‌ سرويس‌دهنده‌

فناوريهاي‌ ذخيره‌ در سرويس‌دهنده‌

اسكازي‌ (SCSI) يا IDE ؟

استفاده‌ از RAID

مديريت‌ ذخيره‌ سلسله‌مراتبي‌ (HSM)

شبكه‌ Fibre Channel

زيرسيستم‌هاي‌ ذخيره‌ شبكه‌

(NAS) Network Attached Storage



فصل‌ 9 : طراحي‌ شبكه‌

مروري‌ بر طراحي‌ شبكه‌

موازنه‌ نيازها

در پي‌ كسب‌ تأييد

طراحي‌ يك‌ شبكه‌ كوچك‌ دفتري‌ يا شبكه‌ خانگي‌

انتخاب‌ كامپيوترها

انتخاب‌ يك‌ پروتكل‌ شبكه‌

توسعه‌ شبكه‌

طراحي‌ شبكه‌ تقابلي‌

قطعه‌ و زيرساخت‌

اتصال‌ به‌ شبكه‌هاي‌ دور

جايدهي‌ تجهيزات‌

به‌ سرانجام‌ رسانيدن‌ طرح‌





بخش‌ سوم‌ ــ پروتكل‌هاي‌ شبكه‌



فصل‌ 10 : مباني‌ اترنت‌

تعريف‌ اترنت‌

استانداردهاي‌ اترنت‌

CSMA/CD

دستورالعمل‌هاي‌ لايه‌ فيزيكي‌ 100Base-FX

فريم‌ اترنت‌

اترنت‌ دوجهته‌ كامل‌

ملزومات‌ عملكرد دوجهته‌ كامل‌

كنترل‌ جريان‌ دوجهته‌ كامل‌

كاربردهاي‌ دوجهته‌ كامل‌



فصل‌ 11 : Fast Ethernet و

Gigabit Ethernet

Fast Ethernet

انتخابهاي‌ لايه‌ فيزيكي‌

محدوديتهاي‌ طول‌ كابل‌

مذاكره‌ خودكار

Gigabit Ethernet

معماري‌ Gigabit Ethernet

كنترل‌ دستيابي‌ به‌ رسانه‌

واسط مستقل‌ از رسانه‌ Gigabit

لايه‌ فيزيكي‌

ارتقاي‌ شبكه‌ اترنت‌

اضافه‌كردن‌ ايستگاههاي‌ كاري‌

ارتقا به‌ Fast Ethernet

عيب‌يابي‌ اترنت‌

خطاهاي‌ اترنت‌

مجزاكردن‌ مشكل‌

100VG-AnyLAN

زيرلايه‌ كنترل‌ پيوند منطقي‌

زيرلايه‌هاي‌ MAC و RMAC

زيرلايه‌ مستقل‌ از رسانه‌ فيزيكي‌

زيرلايه‌ واسط مستقل‌ از رسانه‌

زيرلايه‌ وابسته‌ به‌ رسانه‌ فيزيكي‌

واسط وابسته‌ به‌ رسانه‌

كار با 100VG-AnyLAN



فصل‌ 12 : پروتكل‌هاي‌ تبادل‌ توكن‌

Token Ring

لايه‌ فيزيكي‌ Token Ring

فريم‌هاي‌ Token Ring

خطاهاي‌ Token Ring

FDDI

همبندي‌ FDDI

زيرسيستم‌هاي‌ FDDI

FDDI-II



فصل‌ 13 : TCP/IP

خواص‌ TCP/IP

معماري‌ TCP/IP

پشته‌ پروتكل‌ TCP/IP

آدرس‌دهي‌ IP

ماسك‌ زيرشبكه‌

ثبت‌ آدرس‌ IP

آدرس‌هاي‌ IP خاص‌

ايجاد زيرشبكه‌

درگاهها و سوكت‌ها

نامگذاري‌ در TCP/IP

پروتكل‌هاي‌ TCP/IP

SLIP و PPP

SLIP

PPP

ARP

IP

IPv6

ICMP

پيغامهاي‌ خطاي‌ ICMP

پيغامهاي‌ پرس‌وجوي‌ ICMP

UDP

TCP



فصل‌ 14 : پروتكل‌هاي‌ نت‌ور

پروتكل‌هاي‌ لايه‌ پيوند داده‌

پروتكل‌ مبادله‌ بسته‌ در شبكه‌هاي‌ تقابلي‌ (IPX)

پروتكل‌ مبادله‌ دنباله‌اي‌ بسته‌ (SPX)

پروتكل‌ هسته‌ نت‌ور (NCP)

پيغام‌ تقاضاي‌ NCP

پيغام‌ پاسخ‌ NCP

پروتكل‌ انفجار بسته‌ هسته‌ نت‌ور (NCPB)

پروتكل‌ اعلام‌ سرويس‌

فريم‌ تقاضاي‌ SAP

فريم‌ پاسخ‌ SAP

مشكلات‌ SAP



فصل‌ 15 : نت‌بايوس‌، NetBEUI ، و بلوك‌هاي‌ پيغام‌سرويس‌دهنده‌ (SMB)

نت‌بايوس‌

فريم‌ NetBEUI

پروتكل‌ مديريت‌ نام‌

پروتكل‌ ديتاگرام‌ كاربر

پروتكل‌ تشخيص‌ و نظارت‌

پروتكل‌ مديريت‌ نشست‌

بلوك‌هاي‌ پيغام‌ سرويس‌دهنده‌ (SMB)

پيغامهاي‌ SMB

ارتباطات‌ SMB





بخش‌ چهارم‌ ــ سيستم‌عامل‌هاي‌ شبكه‌



فصل‌ 16 : ويندوز 2000 و ويندوز NT

جايگاه‌ ويندوز

نسخه‌ها

محصولات‌ ويندوز NT/2000

Service Pack ها

مروري‌ بر سيستم‌عامل‌

اجزاي‌ مد هسته‌

اجزاي‌ مد كاربر

سرويس‌ها

معماري‌ شبكه‌ ويندوز

واسط NDIS

واسط درايور انتقال‌

سرويس‌ Workstation

سرويس‌ Server

قيود

API ها

سيستم‌هاي‌ فايل‌

FAT16

FAT32

NTFS

رجيستري‌ ويندوز

سرويس‌هاي‌ اختياري‌ شبكه‌ در ويندوز

اكتيو دايركتوري‌

سرويس‌دهنده‌ DHCP مايكروسافت‌

سرويس‌دهنده‌ DNS مايكروسافت‌

Windows Internet Naming Service

Gateway Services for NetWare

Routing and Remote Access Server

Netwrok Address Translation

Distributed File System

Internet Information Server

Load Balancing Service

Cluster Server

IntelliMirror

كيفيت‌ سرويس‌

پشتيباني‌ از پايانه‌ ويندوز



فصل‌ 17 : اكتيو دايركتوري‌

معماري‌ اكتيو دايركتوري‌

انواع‌ شي‌ء

نامگذاري‌ اشيا

دامنه‌، درخت‌ و جنگل‌

اكتيو دايركتوري‌ و DNS

سرويس‌دهنده‌ كاتالوگ‌ سراسري‌

ايجاد اكتيو دايركتوري‌

ايجاد كنترل‌كننده‌هاي‌ دامنه‌

تكرار دايركتوري‌

سايت‌

طراحي‌ يك‌ اكتيو دايركتوري‌

طراحي‌ دامنه‌ها، درختها و جنگلها

نامگذاري‌ اشيا

ارتقا از ويندوز NT نسخه‌ 4

مديريت‌ اكتيو دايركتوري‌



فصل‌ 18 : دامنه‌هاي‌ ويندوز NT

كنترل‌كننده‌هاي‌ دامنه‌

تكرار

چگونگي‌ فرآيند تكرار

تغيير پارامترهاي‌ تكرار

روابط مطمئن‌

ايجاد روابط مطمئن‌

سازماندهي‌ روابط مطمئن‌

ملاحظه‌ روابط مطمئن‌

ورود به‌ شبكه‌

كشف‌ كنترل‌كننده‌ دامنه‌

تأييد اعتبار ميان‌گذر

انتخاب‌ يك‌ سرويس‌ دايركتوري‌



فصل‌ 19 : ناول‌ نت‌ور

جايگاه‌ نت‌ور

نسخه‌هاي‌ نت‌ور

نت‌ور 2.x

نت‌ور 3.x

نت‌ور 4.x

intraNetWare

نت‌ور 4/2

نت‌ور 5/1

نصب‌ نت‌ور

درايورهاي‌ ديسك‌

NIC و درايورهاي‌ پروتكل‌

ساختن‌ فايل‌هاي‌ NCF

نت‌ور به‌روزرساني‌شده‌

زيرسيستم‌ ذخيره‌ نت‌ور

بلوك‌هاي‌ تخصيص‌ ديسك‌

DET و FAT

فضاهاي‌ نام‌

بهبود سيستم‌ فايل‌

سرويس‌هاي‌ ذخيره‌ ناول‌

اطلاعات‌ بيشتر درباره‌ نت‌ور فصل‌ 20 : Novell DirectoryServices

(NDS)

معماري‌ NDS

حاوي‌ (container) و برگ‌ (leaf)

اشيا و خصوصيات‌

نامگذاري‌ اشياي‌ NDS

پارتيشن‌ و كپي‌

همگام‌سازي‌ زمان‌

طراحي‌ درخت‌ NDS

قوانين‌ طراحي‌ درخت‌

متعادل‌سازي‌ درخت‌

ساختن‌ درخت‌

روشهاي‌ نامگذاري‌ اشيا

روابط اشيا

استفاده‌ از قالب‌

استفاده‌ از گروه‌

معادل‌ امنيتي‌ و نقش‌ سازماني‌

كوچ‌ از صحافي‌

ادغام‌ درختها

امنيت‌ NDS

حقوق‌ دستيابي‌ به‌ شي‌ء و خصوصيات‌

ارث‌بري‌ حقوق‌



فصل‌ 21 : يونيكس‌

قواعد يونيكس‌

معماري‌ يونيكس‌

نسخه‌هاي‌ يونيكس‌

Unix System V

BSD Unix

سان‌ سولاريس‌ (Sun Solaris)

لينوكس‌

شبكه‌ يونيكس‌

فرمانهاي‌ از راه‌ دور

فرمانهاي‌ راه‌ دور بركلي‌ (Berkeley)

فرمانهاي‌ DARPA

سيستم‌ فايل‌ شبكه‌ (NFS)

شبكه‌ سرويس‌گيرنده‌/ سرويس‌دهنده‌



فصل‌ 22 : سرويس‌گيرنده‌هاي‌ شبكه‌

سرويس‌گيرنده‌هاي‌ شبكه‌ ويندوز

معماري‌ شبكه‌ ويندوز

نسخه‌هاي‌ سرويس‌گيرنده‌ ويندوز

سرويس‌گيرنده‌هاي‌ نت‌ور

نت‌ور و ويندوز 16 بيتي‌

نت‌ور و ويندوز 95/98/Me

نت‌ور و ويندوز NT/2000

سرويس‌گيرنده‌هاي‌ مكينتاش‌

وصل‌كردن‌ سيستم‌هاي‌ مكينتاش‌ به‌ شبكه‌هاي‌ ويندوز

وصل‌كردن‌ سيستم‌هاي‌ مكينتاش‌ به‌ نت‌ور

سرويس‌گيرنده‌هاي‌ يونيكس‌





بخش‌ پنجم‌ ــ سرويس‌هاي‌ اتصال‌ شبكه‌



فصل‌ 23 : DHCP

تاريخچه‌

RARP

BOOTP

اهداف‌ DHCP

تخصيص‌ آدرس‌ IP

پيكربندي‌ سرويس‌گيرنده‌ TCP/IP

معماري‌ DHCP

ساختار بسته‌ DHCP

انتخابهاي‌ DHCP

ارتباطات‌ DHCP

عامل‌هاي‌ رله‌

پياده‌سازي‌هاي‌ DHCP

سرويس‌دهنده‌ DHCP مايكروسافت‌

ايجاد حوزه‌

مراسلات‌ سرويس‌دهنده‌ به‌ سرويس‌گيرنده‌

برنامه‌هاي‌ خدماتي‌ سرويس‌گيرنده‌ مايكروسافت‌

پشتيباني‌ از انتخابهاي‌ سرويس‌گيرنده‌

مدت‌ اجاره‌ DHCP

جابه‌جاكردن‌ سرويس‌دهنده‌ DHCP

نگهداري‌ DHCP

ويندوز 2000 و DHCP



فصل‌ 24 : تبديل‌ نام‌ WINS و نت‌بايوس‌

اسامي‌ نت‌بايوس‌

روشهاي‌ ثبت‌نام‌

ثبت‌نام‌ LMHOSTS

ثبت‌نام‌ با ارسالهاي‌ همگاني‌

ثبت‌نام‌ WINS

روشهاي‌ تبديل‌ نام‌

تبديل‌ با استفاده‌ از حافظه‌ نهان‌ نام‌ نت‌بايوس‌

تبديل‌ نام‌ LMHOSTS

تبديل‌ نام‌ با ارسالهاي‌ همگاني‌

تبديل‌ نام‌ WINS

WINS و مرور شبكه‌ تقابلي‌

انواع‌ گره‌

انواع‌ گره‌ مايكروسافت‌

تنظيم‌ نوع‌ گره‌

فرمت‌هاي‌ پيغام‌ NetBT

بخش‌ سرآيند

بخش‌ پرسش‌

بخش‌ ركورد منبع‌

مبادلات‌ نمونه‌

استفاده‌ از LMHOSTS

استفاده‌ از ارسالهاي‌ همگاني‌

استفاده‌ از WINS

تكرار WINS

معماري‌ WINS

پراكسي‌هاي‌ WINS



فصل‌ 25 : سيستم‌ نام‌ دامنه‌

جدول‌ ميزبان‌

مشكلات‌ جدول‌ ميزبان‌

اهداف‌ DNS

نامگذاري‌ دامنه‌ها

دامنه‌هاي‌ سطح‌ بالا

دامنه‌هاي‌ سطح‌ دوم‌

زيردامنه‌

عمليات‌ DNS

ركوردهاي‌ منبع‌

تبديل‌ نام‌ DNS

تبديل‌ نام‌ معكوس‌

ثبت‌كردن‌ نام‌ DNS

مبادلات‌ منطقه‌

مبادلات‌ پيغام‌ در DNS

بخش‌ سرآيند DNS

بخش‌ سؤال‌ DNS

بخشهاي‌ ركورد منبع‌ DNS

نمايش‌ اطلاعات‌ در پيغامهاي‌ DNS

پيغامهاي‌ تبديل‌ نام‌

پيداكردن‌ سرويس‌دهنده‌ نام‌ ريشه‌

پيغامهاي‌ مبادله‌ منطقه‌

دستيابي‌ به‌ سرويس‌هاي‌ DNS

گرفتن‌ سرويس‌هاي‌ DNS از ديگران‌

به‌ راه‌انداختن‌ سرويس‌دهنده‌ DNSبراي‌ خود



بخش‌ ششم‌ ــ سرويس‌هاي‌ شبكه‌



فصل‌ 26 : سرويس‌هاي‌ اينترنت‌

سرويس‌دهنده‌هاي‌ وب‌

مزاياي‌ داشتن‌ سرويس‌دهنده‌ وب‌ در شبكه‌ خود

انتخاب‌ يك‌ سرويس‌دهنده‌ وب‌

HTML

HTTP

سرويس‌دهنده‌هاي‌ FTP

فرمانهاي‌ FTP

كدهاي‌ پاسخ‌ FTP

مبادلات‌ پيغام‌ در FTP

پست‌ الكترونيكي‌

آدرس‌دهي‌ پست‌ الكترونيكي‌

سرويس‌گيرنده‌ها و سرويس‌دهنده‌هاي‌ پست‌ الكترونيكي‌

پروتكل‌ انتقال‌ نامه‌ ساده‌ (SMTP)

پروتكل‌ اداره‌ پست‌ (POP3)

پروتكل‌ دستيابي‌ به‌ پيغام‌ اينترنتي‌ (IMAP)



فصل‌ 27 : چاپ‌ در شبكه‌

مسائل‌ چاپ‌ در شبكه‌

زمانبندي‌ تكاليف‌ چاپ‌

اتصالات‌ چاپگر

انتخاب‌ چاپگر

انتخاب‌ سيستم‌عامل‌

انتخاب‌ سرويس‌دهنده‌ چاپ‌

مديريت‌ چاپگر

چاپ‌ در شبكه‌ ويندوز

فرآيند چاپ‌ در ويندوز

پيكربندي‌ چاپگر ويندوز

چاپ‌ در نت‌ور

سرويس‌هاي‌ چاپ‌ توزيع‌شده‌ ناول‌

پيكربندي‌ چاپگر نت‌ور

چاپ‌ در يونيكس‌



فصل‌ 28 : اتصال‌ به‌ اينترنت‌

انتخاب‌ ISP

انواع‌ اتصال‌

ملزومات‌ پهناي‌ باند

سرويس‌هاي‌ اينترنتي‌

مسيريابهاي‌ اينترنت‌

مسيريابهاي‌ نرم‌افزاري‌

مسيريابهاي‌ سخت‌افزاري‌

ملزومات‌ سرويس‌گيرنده‌ها



فصل‌ 29 : امنيت‌ شبكه‌

امن‌كردن‌ سيستم‌فايل‌

مدل‌ امنيتي‌ ويندوز 2000/NT

جوازهاي‌ سيستم‌فايل‌ ويندوز 2000/NT

جوازهاي‌ سيستم‌فايل‌ نت‌ور

جوازهاي‌ سيستم‌فايل‌ يونيكس‌

بررسي‌ هويت‌

تأييد اعتبار FTP

كربروس‌ (Kerberos)

جواز ديجيتالي‌

تأييد اعتبار بيومتري‌ و براساس‌ توكن‌

امن‌كردن‌ ارتباطات‌ شبكه‌

IPsec

SSL

فايروال‌

فيلتركردن‌ بسته‌

ترجمه‌ آدرس‌ شبكه‌

سرويس‌دهنده‌هاي‌ پراكسي‌

دروازه‌ سطح‌ مدار

تركيب‌ فناوريهاي‌ فايروال‌



بخش‌ هفتم‌ ــ مديريت‌ شبكه‌



فصل‌ 30 : مديريت‌ شبكه‌ ويندوز

جاي‌دهي‌ برنامه‌ها و داده‌ها

سيستم‌عامل‌هاي‌ مبتني‌ بر سرويس‌دهنده‌

برنامه‌هاي‌ مبتني‌ بر سرويس‌دهنده‌

ذخيره‌سازي‌ فايل‌هاي‌ داده‌

كنترل‌ محيط ايستگاه‌ كاري‌

مپ‌كردن‌ درايوها

پروفايل‌ كاربر

كنترل‌كردن‌ رجيستري‌ ايستگاه‌ كاري‌

استفاده‌ از سياستهاي‌ سيستم‌

ويرايش‌ رجيستري‌ از راه‌ دور

سياستهاي‌ گروه‌ ويندوز 2000



فصل‌ 31 : ابزارهاي‌ مديريت‌ و عيب‌يابي‌ شبكه‌

برنامه‌هاي‌ خدماتي‌ سيستم‌عامل‌

برنامه‌هاي‌ خدماتي‌ ويندوز

برنامه‌هاي‌ خدماتي‌ TCP/IP

تحليلگرهاي‌ شبكه‌

فيلتركردن‌ داده‌ها

عامل‌

تحليل‌ بار

تحليل‌ پروتكل‌

تست‌كننده‌ كابل‌

مديريت‌ شبكه‌



فصل‌ 32 : پشتيبان‌گيري‌

سخت‌افزار پشتيبان‌گيري‌

ظرفيت‌ پشتيبان‌گيري‌

واسط نوارگردان‌

ظرفيت‌ نوار مغناطيسي‌

فناوريهاي‌ نوار مغناطيسي‌

خود تعويض‌گر نوار

نرم‌افزار پشتيبان‌گيري‌

انتخاب‌ هدف‌ پشتيبان‌گيري‌

استفاده‌ از عامل‌ پشتيبان‌گيري‌

پشتيبان‌گيري‌ از فايل‌هاي‌ باز

نجات‌ از مصيبت‌

زمانبندي‌ پشتيبان‌گيري‌

به‌كارگيري‌ تناوبي‌ رسانه‌ها

مديريت‌ پشتيبان‌گيري‌

گزارشگيري‌ از رخدادها

بازيابي‌ داده‌ها



واژگان‌ فارسي‌



واژگان‌ لاتين‌



فهرست‌ راهنما


دقت کنید میبینید که کلاسترینگ و لود بالانسینگ رو در دو مبحث جدا توضیح داده!
 
تلفیق cluster و load balancing برای راه اندازي يك سرور مجازي لينوكس

منبع : مجله شبكه
شماره 59

همزمان با رشد سريع اينترنت و خدمات آنلاين، هر روز بر حجم پردازش سرويس دهنده ها و تعداد درخواست هاي كاربران افزوده مي شود. اما حداكثر توان كاري هر سرويس دهنده اندازه اي دارد كه بيشتر از آن نمي تواند به در خواست ها جواب دهد و به صورت معمول سرويس دهي كند. براي خروج از اين وضعيت يك مدير سرويس دهنده، چندين راه حل دارد: جايگزيني سرورهايي با قدرت پردازش بيشتر و يا افزايش تعداد سرويس دهنده هاي موجود. اما اين كار شايد هزينه بسيار زيادي را به سيستم تحميل كند. به طوري كه عملا اجراي آن غيرممكن خواهد بود. در اين شرايط ، شايد برپا سازي يك سرويس دهنده مجازي بر پايه مفاهيم كلاستر و تقسيم سرويس ها ميان چندين سرويس دهنده، يكي از مؤثرترين راهكارهايي باشد كه مي توان براي افزايش قدرت سرويس دهنده به كاربست. كلاستر سازي اين قابليت را فراهم مي كند كه با افزودن يك سرور مجازي به سيستم ، در خواست هاي سرويس ميان چند سرويس دهنده تقسيم شود و از وارد آمدن فشار اضافي بريك سرويس دهنده و نهايتا مختل شدن سرويس دهي شبكه جلوگيري به عمل آيد. در اين نوشتار، به برپاسازي و پيكربندي يك سرور مجازي لينوكس در يك شبكه، كه شامل چندين سرويس دهنده مختلف، مانند سروي دهنده وب، ايميل و FTP است نگاهي مي اندازيم.

مفهوم كلاستر
كلاسترها يكي از جذاب ترين مفاهيمي هستند كه در بحث هاي پردازش موازي و سرويس دهنده مطرح مي شوند. به طور عام ، مفهوم كلاسترها به يك مجموعه از كامپيوترها اطلاق مي شود كه با اشتراك قدرت پردازشي يكديگر، توان بيشتري را براي انجام دادن امور پردازشي محوله فراهم مي كنند. يك كلاستر شامل چندين ماشين است كه در يك شبكه محلي پرسرعت به هم متصل شده و با استفاده از يك برنامه زمانبندي و هماهنگ سازي ميان ماشين هاي شبكه، امور پردازشي را انجام مي دهند.
گونه اي از اين كلاسترها موسوم به load-balancing cluster وظيفه موازنه كردن ترافيك شبكه را ميان ماشين هاي شبكه بر عهده دارند. هدف اين نوشتار نيز پياده سازي چنين كلاستري است كه بتواند با تقسيم كردن درخواست هاي سرويس ارسالي از كاربران يك شبكه ميان چند سرويس دهنده ، از تراكم حجم كاري بر روي يك سرويس دهنده بكاهد.
طرح ريزي كلاستر
كلاستر شامل يك سرور مجازي مبتني بر سيستم عامل لينوكس و تعدادي سرور فيزيكي خواهد بود كه با استفاده از يك سوئيچ ، با هم در ارتباط هستند . هدف شبكه، ارائه سرويس هايي مانند وب و ايميل به كاربران است. كاربران از طريق يك بستر شبكه اي، مانند اينترنت، با سرور مجازي ارتباط دارند. سرورهاي فيزيكي مي توانند بر هر سيستم عاملي مبتني باشند. وظيفه سرور مجازي لينوكس ، بااستفاده از آدرس هاي IP، كاهش فشار حجم درخواست هاي ارسالي به يك سرور فيزيكي و تقسيم درخواست ها ميان چند سرور موجود در شبكه است.
در واقع مي توان گفت كه سرور مجازي ، نقش يك رابط را ميان كاربران شبكه و سرورهاي فيزيكي شبكه ايفا مي كند كه در اين ميان، امكان همزماني پردازش هاي بيشتري از درخواست ها با استفاده از يك آدرس IP فراهم مي شود. هنگامي كه سرور مجازي يك درخواست را از كاربر دريافت مي كند، براساس يك الگوريتم زمانبندي ، درخواست كاربر را به سرور فيزيكي مربوطه تحويل مي دهد. سپس سرور فيزيكي داده هاي مورد تقاضا را براي سرور مجازي به درخواست كاربر جواب خواهد داد. در اين ميان، سرويس دهنده حقيقي همان سرورهاي فيزيكي هستند كه آدرس IP آن ها توسط سرور مجازي تغيير يافته است. سرور مجازي از دو رابط شبكه استفاده مي كند: يك رابط براي برقراري ارتباط با كاربران و دسترسي كاربران به شبكه ، و رابط دوم جهت ارتباط با شبكه محلي و سرورهاي فيزيكي . راه اندازي يك كلاستر با اين ساختار، قابليت هرگونه تغيير، حذف يا افزودن سرورهاي فيزيكي را براي مدير شبكه فراهم مي كند.

بازسازي هسته لينوكس
لينوكس شامل هسته نسخه 2.4.28 و نسخه هاي بالاتر، از كلاسترهاي سرور مجازي يا LVS پشتيباني مي كنند. پس اگر از نسخه هاي پايين تر استفاده مي شود، بايد با اضافه كردن ماجول LVS مجددا هسته را كامپايل و بازسازي كنيد. اين بسته به صورت رايگان از نشاني http://www.linuxvirtualserver.org قابل دريافت است . چون در سايت براي نسخه هاي مختلف هسته، بسته هاي مختلفي ارائه شده ، لازم است شماره بسته متناسب با نسخه هسته لينوكس سيستم بررسي شود. بسته دريافتي از سايت را در شاخه usr/src/ كپي كنيد و دستورات زير را اجرا نماييد:


×#cd/usr/scr/linux
#gunzip ../linux-2.4.21-ipvs-1.0.10.patch.gz
#patch-p1< ../linux-2.4.21-ipvs-1.0.10.patch

دستور خط اول ، موقعيت خط فرمان را به زيرشاخه×linux منتقل مي كند. در خط دوم ، با استفاده از ابزار GUNZIP ، بسته دريافت شده از سايت پروژه از حالت فشرده خارج شده و در خط سوم اين بسته، به هسته اضافه شده است . پس از اضافه شده است. پس از اضافه شدن بسته به هسته، بايد مجددا هسته كامپايل شود. يعني در دايركتوري ×usr/src/linux دستورات زير اجرا شوند:



#make mrproper
#make oldconfig
#make menuconfig

با اجراي دستور آخر، يك منو با چندين زيرشاخه اجرا خواهدشد. براي فعال كردن سرور مجازي از شاخه Networking Options، گزينه IP:Virtual Server Configuration را انتخاب نماييد و آدرس سرور مجازي را تنظيم كنيد:



virtual server support( EXPERIMENTAL)
]Ipvirtual server debugging×[
(16) IPVS connection table size(the Nith power of2)
---IPVS scheduler
round-robin scheduling
< M >weighted round-robin scheduling
< M >least-connection scheduling scheduling
< M >weighted least-connection scheduling
< M >locality-based least-connection scheduling
< M >locality-based least-connection with replication scheduling
< M >destination hashing scheduling
< M >source hashing scheduling
< M >shortest expected delay scheduling
< M >never queue scheduling
---IPVS application helper
FTP protocol helper


قبل از خروج از menuconfig، بايد تغييرات ذخيره شوند. براي ساختن تمامي ماجول هاي جديد كرنل، دستور زير اجرا مي شود:



#make dep&&make bzlmage &&make modules && make modulesinstal​
l


پس از اجراي دستور بالا، زير شاخه جديدي به نام bzlmage در دايركتوري /arch/i386/boot/×usr/src/linux ساخته مي شود و تصوير هسته كامپايل شده در اين شاخه قرار مي گيرد. براي اتمام پيكربندي هسته، بايد اين تصوير در شاخهboot/ كپي شده و فايل هاي پيكربندي بوت لودرهاي سيستم نيز بروز رساني شوند.
نصب ابزار IPT و IPVsadm
در گام بعدي ، پس از بازسازي هسته لينوكس، براي پيكربندي سرور مجازي ، بايد بسته هاي IPTable و IPVsadm نصب شوند. IPTable ابزاري براي راه اندازي ساختار يك فايروال مبتني بر فيلتر بسته هاي IPV4 و NAT در هسته لينوكس است. بااستفاده از اين ابزار، آدرس هاي IPهاي مجازي براي سرورهاي فيزيكي تعريف مي شوند. IPVsadm نيز يك ابزار براي مديريت سرور مجازي لينوكس، تنظيم الگوريتم زمانبندي تقسيم درخواست ها و قوانين ارسال درخواست هاي كاربران به سرورهاي فيزيكي است. بسته نصب IPTable به همراه اكثر توزيع ها ارائه مي شود و مي توان از طريق برنامه مديريت بسته هاي توزيع لينوكس به راحتي آن را نصب كرد. بسته rpm نصب ابزار IPVsadm نيز از سايت پروژه LVS قابل دريافت است. پس از نصب اين دو ابزار، لازم است كه گزينه IP forwarding براي سرور لينوكس فعال شود. براي اين منظور، فايل etc/sysctl.conf/ را در يك ويرايشگر متني بازكرده و گزينه زير را با ارزش 1 مقداردهي كنيد:
net.ipv4.ipforward=1
اكنون كافي است با استفاده از دستور start، سرويس IPTable براي ارسال بسته هاي IP سرورهاي فيزيكي به آدرس كاربران شبكه فعال شود:
#service iptables start
فعال كردن IP masquerading
براي تنظيم آدرس IP سرورهاي فيزيكي در سرور مجازي لينوكس، بايد به اين نكته توجه شود كه eth0 براي كارت شبكه ارتباطي با شبكه اينترنت و eth1 براي كارت شبكه محلي تعريف شوند. در ادامه برروي سرور مجازي، دستورات زير اجرا شوند:



#iptables-t nat-P POSTROUTING DROP
#iptables-t nat-A POSTROUTING-o eth0-j MASQUERDE​


در خط اول ، با تعريف يك قانون براي IPTables، يك سطح خارجي امنيتي براي شبكه تعريف مي شود. DROP اين اختيار را به IRTables مي دهد كه هرگونه بسته IP كه از ruleهاي تعريفي تبعيت نمي كند، از شبكه حذف شود و در نتيجه هر آدرس IP جعلي يا ساختگي را نمي توان براي شبكه تنظيم كرد. خط دوم، جدول NAT را براي آدرس دهي شبكه داخلي ميان سرورهاي فيزيكي با سرور مجازي و كارت شبكه eth0 فعال مي كند.
پيكربندي سرور مجازي لينوكس با IPVsadm
در گام بعدي، با استفاده از ابزار IPVsadm سرور مجازي تنظيم مي شود. براي شروع بايد به هريك از ماشين هاي شبكه يك آدرس IP اختصاص داده شود. براي سرورهاي فيزيكي شبكه محلي، يك بازه آدرس دهي مانند 10.0.0.0 تا 255.255.255.0 انتخاب شده و از يك شماره Subnet Musk استفاده مي شود. از سرور مجازي به عنوان دروازه براي سرورهاي فيزيكي استفاده مي شود. ماشين هاي كلاينت با آدرس هاي IP اختصاص يافته توسط سرويس دهنده اينترنت با سرور مجازي در ارتباط خواهند بود. يكي از دو سرور يك سرويس دهنده HTTP است كه براي آن آدرس 10.0.0.2 تعريف مي شود و سرور دوم كه يك سرويس دهنده FTP است، با 10.0.0.3 آدرس دهي مي شود. آدرس 10.0.0.1 به عنوان پيش فرض دروازه براي ارتباط با سرور مجازي انتخاب مي شود و براي ارتباط سرور مجازي انتخاب مي شود و براي ارتباط سرور مجازي با شبكه اينترنت آدرس IP عمومي 61.16.130.100 منظور مي گردد. اكنون با ابزار IPVsadm، آدرس هاي تخصيص داده شده براي سرور مجازي تعريف مي شوند:



#ipvsadm-A-t 161.16130.100:80-s wlc
#ipvsadm-A-161.16.130.100:21-s wrr​


در فرامين بالا wlc و wrr دو الگوريتم مديريت ترافيك سرور مجازي براي پورت هاي 80 و 21 هستند. غير از اين دو، الگوريتم هاي زمانبندي قابل تعريف ديگري نيز وجود دارد كه براي آشنايي با آن ها مي توانيد به صفحات man اين برنامه مراجعه كنيد. براي تعريف سرورهاي فيزيكي ، دستورات بالا به صورت زير اجرا مي شوند:



#ipvsadm-a-t 161.16130.100:80-r 10.0.0.3:80-m
#ipvsadm-a-t 161.16.130.100:80-r 10.0.0.2:80-m-w2
#ipvsadm-a-t 161.16.130.100:21-r 10.0.0.3:21-m​


البته هميشه ترافيك پورت 80 بيشتر از ترافيك پورت FTP خواهدبود. بدين خاطر آدرس IP شماره 10.0.0.3 براي پورت 80 نيز تعريف شده است. در اين حالت، سرور مجازي با استفاده از الگوريتم هاي زمانبندي خود، مي تواند بار ترافيكي اين پورت را بر روي دو سرور فيزيكي تقسيم كند، با دادن ارزش دو توسط آرگومان m- به آدرس 10.0.02، سرور مجازي خواهد فهميد كه اين پورت بر روي آدرس ديگري نيز تعريف شده است.
نتيجه گيري
براي آزمايش درستي عملكرد شبكه، مي توان با استفاده از ماشين هاي كلاينت، درخواست هايي را براي سرور مجازي فرستاد و نتيجه را مشاهده كرد. اگر به صورت همزمان چندين درخواست را از چند ماشين كلاينت ارسال كنيد، خواهيد ديد برخي درخواست ها به وسيله سرويس دهنده FTP پردازش شده اند و آدرس IP متفاوتي ميان درخواست هاي رسيده برروي ماشين هاي كلاينت وجود دارد. راه اندازي يك سرور مجازي با مشخصات بالا جوابگوي يك كلاستر با تعداد محدودي سرويس دهنده است. براي شبكه هايي كه از تعداد زيادي سرويس دهنده استفاده مي كنند، به راه اندازي چند سرور مجازي، تنظيمات پيشرفته جدول NAT، و سرويس DNS نياز خواهيد داشت.
 
آخرین ویرایش:
این هم منبع برای تاریخچه لود بالانسینگ در ویندوز سرور
نصب بر روی چندين سرويس دهنده . برنامه وبی که بر روی چندين سرويس دهنده اجراء می گردد را Web farm می گويند . برای اين که چندين سرويس دهنده قادر به پاسخگوئی درخواست هائی برای يک آدرس HTTP خاص ، باشند ، می بايست سرويس Load balancing در شبکه نصب گردد. سيستم های عامل Windows 2000 Advanced Server و Windows 2000 Data Center دارای نرم افزار NLB( Network Load Balancing ) برای توزيع درخواست ها بر روی چندين سرويس دهنده می باشند . پس از فعال شدن سرويس فوق ( NLB ) در شبکه ، می توان برنامه وب را بر روی چندين سرويس دهنده نصب نمود . در چنين وضعيتی همواره درخواست کاربران به صورت اتوماتيک دراختيار سرويس دهنده ای که دارای مشغله کمتری است ، قرار داده می شود .

http://www.srco.ir/Articles/DocView.asp?ID=236
 
روشهای بارگذاری متوازن در SharePoint

در این پست می خوام شما رو با روشهای بارگذاری متوازن که در توپولوژی SharePoint پشتیبانی شده آشنا کنم. البته بارگذاری متوازن بحثی کاملا تخصصی در زمینه شبکه است و پرداختن به این موضوع خارج از بحث ماست. در این پست سعی کردم فقط روشهای پشتیبانی شده رو معرفی کنم. WSS 3.0 دو روش بارگذاي متوازن را پشتيباني مي كند :


روش نرم افزاري : مانند سرويس Network Load Balancing (NLB) که در سيستم عامل Microsoft Windows Server 2003 وجود دارد. NLB بر روي وب سرورها اجرا مي شود و از TCP/IP براي تعيين مسيردرخواستها استفاده مي كند. از آنجايي كه NLB (وديگر روشهاي نرم افزاري بارگذاري متوازن) بر روي وب سرورها اجرا مي شوند ، از منابع اين سيستم ها استفاده مي كنند و منابع مورد نياز جهت پرداخت صفحات وب را كاهش مي دهند. با اين حال فشار بر روي اين منابع چندان مهم نيست و روشهاي نرم افزاري بارگذاري متوازن توانايي بكارگيري حداكثر 32 وب سرور را دارند. شکل زیر چگونگی عملکرد بارگذاری متوازن به شیوه نرم افزاری را نشان می دهد. برای دریافت اطلاعات بیشتر در مورد NLB بهhttp://technet2.microsoft.com/windo...f175-4f09-8ec7-3a73d10a06aa1033.mspx?mfr=true
مراجعه کنید.

SLB.JPG


روش سخت افزاري : مانند استفاده از مسيرياب يا جعبه سوئيچ. چنين سخت افزارهايي عبور و مرور درخواستهاي ارسال شده به وب سرورها را كنترل و هدايت مي كند. به كاربردن روشهاي سخت افزاري بسيار گرانتر از روشهاي نرم افزاري بوده ، اما بر روي منابع وب سرورها تاثير گذار نمي باشد. Windows SharePoint Services 3.0 قابل استفاده با هر نوع سخت افزار بارگذاري متوازن مي باشد.

HLB.JPG


روش سوم براي بارگذاري متوازن روش round-robin با سيستم DNS مي باشد كه چندان توصيه نمی شود. روش Round-robin DNS قسمت مهمي از منابع وب سرورها را اشغال مي كند و كندتر از روشهاي سخت افزاري و نرم افزاري مي باشد و براي استفاده به همراه Windows SharePoint Services 3.0 توصيه نمي شود.
 
(در باب همون تاریخچه لود بالانسینگ و کلاسترینگ در ویندوز های سرور!)
نسخه دوم ، Windows 2000 Advanced Server است. این نسخه، شامل تمامی ویژگی ها و پتانسیل های نسخه Windows 2000 Server بعلاوه امكانات اضافه دیگری است . نسخه فوق ، نیز دارای محدودیت های خاص خود است . حمایت از حداكثر هشت پردازنده و هشت گیگابایت حافظه ، نمونه هائی در این زمینه می باشند . این نسخه ، تغییراتی را درارتباط با مدل حافظه استفاده شده توسط برنامه ها، ایجاد نموده است . در این راستا سه گیگابایت ارائه و صرفا" از یك گیگا بایت برای سیستم عامل ، استفاده می شود . بدین ترتیب ، برنامه های بزرگی نظیر SQL Serevr ، از مزایای حافظه RAM بخوبی بهره مند خواهند شد . نسخه فوق ، همچنین دارای امكاناتی نظیر : كلاسترینگ (Clustering ) و Network Load Balancing Service ، است . با اینكه اكثر سرویس دهندگان NET Enterprise . ، بصورت نسخه Enterprise Edition در دسترس می باشند ، ولی این بدین مفهوم نیست كه آنان نیازمند استفاده از نسخه Advanced Server می باشند . مثلا" Exchange Sever Enterprise Edition ، قادر به اجراء بر روی Windows 2000 Server است ( در چنین حالتی ، نمی توان از امكان كلاسترینگ Exchange استفاده گردد ، مگر اینكه آن را بر روی نسخه Advanced Server نصب نمود ) .

http://www.tebyan.net/science_technology/computermagazine/operatingsystems/2004/8/22/7995.html
 
این هم یه سخت افزار کنترل کننده ترافیک دیگه برای لود بالانسینگ

سافت سوئیچ MVTS
MVTS II نسل جدید سافت سوییچ با قابلیت اداره کردن هوشمندانه ترافیک است. اضافه کردن این عملکرد به MVTS باعث مدیریت آسان ترافیک VoIP در شبکه های گسترده شده و جنبه های اقتصادی را ترقی بخشیده است. معماری ماژولار MVTS باعث تطبیق پذیری راه حلهای MERA با شبکه هایی با گستردگی بالا جهت کم کردن مشکلات مربوط به مدیریت ترافیک شبکه شده است. فراهم کردن تواناییهای پیشرفته برای مسیریابی و ارایه ابزارهای هوشمند نمونه هایی از این راه حلها می باشد. معماری ماژولار راه حلی است که نه تنها باعث افزایش قابلیت اطمینان می شود، بلکه قطعا قابلیت انعطاف پذیری را افزایش می دهد. توانمندی MVTS II در ارایه کارایی بی همتا و به همراه کیفیت کاملا پایدار باعث می شود که ترافیک به سرعت رشد کند
image_softswitch_1.jpg


خصوصیات توانمندی که در MVTS گنجانده شده است به شرح زیر است:
*
New intelligent routing capabilities
* Computer-aided profitability monitoring
* Native support of SIP and H.323;
* Various proxy options for both SIP and H.323
* Load balancing mechanism
* Elaborate analysis and reporting tools
* Advanced pre-billing and accounting capabilities
* Partitioning capabilities
* Number portability support

افزایش توانمندی های مسیریابی

توانايي مسيريابی هوشمند در MVTS به خدمات دهنده های مخابراتی اجازه انتخاب مسيرهای مناسب به همراه افزايش ASR ، بالابردن پايداری سرويس و استفاده از سياست‌های مسيريابی قابل انعطاف را می‌دهد. سافت سوييچ MVTS مکانيزم‌های زير را بر پايه مسيريابی هوشمند ارايه مي‌کند

* Cost (LCR etc.)
* Quality (QoS, ASR, ACD etc.)
* Dial peer capacity
* Gateway or route load
* Precedence or accessibility of destination gateway
* Time of day, day of week etc.
* Route capacity
* Destination gateway precedence/accessibility
* Other business critical parameters

Carrier ها مي‌توانند برای مشترکيني که از یک سری مسيرهای خاص استفاده مي‌کنند گروه مسيريابی ايجاد کنند. استفاده از مسيرهای از پيش تعريف شده راندمان کار را افزايش می‌دهد. با افزايش ASR و در دسترس بودن سرويس‌ها می‌توان براساس ناحيه، تجهيزات را در گروهي قرار داد تا زماني که يکی از تجهيزات به صورت فيزيکی از دسترس خارج شد بقيه تجهيزات فعال و حاضر در شبکه وظيفه آن را انجام دهند.
نظارت بر سوددهی

محاسبه نظارت بر سوددهی سیستم یک وظیفه بسیار مهم و آسان برای مدیر شبکه است. مدیر شبکه می تواند یک مقدار حداقل برای سوددهی سیستم در نظر بگیرد . چنانچه سوددهی برای یک مقصد مشخص از حداقل کمتر باشد، سیستم به صورت اتوماتیک به مدیر شبکه از طریق e-mail اطلاع می دهد. در این حالت مدیر شبکه در مورد آن تصمیم می گیرد. MVTS II می تواند از فرستادن ترافیک برای مقصدهایی که سوددهی ندارند جلوگیری کند و یا اینکه به اپراتور شبکه اطلاع دهد که سوددهی مسیر مورد نظر از حداقل لازم پایین تر است. اپراتور می تواند مسیر مورد نظر را انتخاب و یا مسدود کند و یا در حالت دیگر تعداد تماس های فرستاده شده به آن مسیر را محدود به گروه خاصی کند.
ابزارهای آنالیز و گزارش گیری

MVTS II سیستمی کاملا مدیریت شده در اختیار خدمات دهنده های مخابراتی قرار می دهد. از توانایی تحلیلی MVTS زمانی می توان استفاده کرد که نظارت بلادرنگ تماس های پویا بر پایه زمان، کیفیت سرویس، بار گذاری سوددهی و دیگر پارامترها فعال شده باشد. نتیجه اینگونه تحلیل ها به صورت نمودارها و چارت های گرافیکی نمایش داده می شود. با استفاده از موتور آنالیز شبکه، سیستم می تواند به صورت پویا تعرفه برنامه سوددهی برای مقصدهای تعیین شده را بر پایه قیمت و متوسط زمان تماس تعیین کند. این مزیت به خدمات دهندهای مخابراتی در انتخاب بهترین شرکای تجاری کمک می کند.
قابلیت انعطاف پذیری عملکرد پروکسی

MVTS II به خدمات دهنده های مخابراتی اجازه می دهد که برای بالا بردن توانایی از انواع پروکسی استفاده کنند. با استفاده از این شیوه درجه امنیت شبکه نیز بالا می رود. برای داشتن شبکه‌ای ايمن وجود سرويس دهنده پروکسی لازم است تا توپولوژی شبکه از ديد شرکای تجاری و رقيبان پنهان بماند. MVTS II مانند يک نقطه ورودی بین شبکه‌های Carrier و خدمات دهنده‌ها است و از پروکسی های گوناگون برای افزايش مديريت پهنای باند پشتيبانی مي‌کند. پشتیبانی از SIP , H.323 , تبدیل دو طرفه هر دو پروتکل به یکدیگر و بهینه کردن در مصرف پهنای باند نتیجه استفاده از عملکردهای MVTS است.
MVTS II از RADIUS AAA به عنوان سیستم حسابداری پشتیبانی می کند

راه کارهای MERA به شرکای تجاری خدمات دهنده ها این اجازه را می دهد که نرخ تعرفه و حسابهای مشتری های خود همراه با CDR مخصوص خود به سیستم صورت حساب وارد کنند. توانایی های سیستم پیش پرداخت و حسابداری MVTS II به خدمات دهنده های مخابراتی این اجازه را می دهد که براحتی سیستم تخفیف دهی را اجرا کنند.
پشتیبانی از شماره های قابل انتقال

با پشتیبانی از شماره های قابل انتقال، خدمات دهنده های مخابراتی اجازه می یابند که ترافیک مشترکین در حرکت را بدون در نظر گرفتن پیش شماره های آن ها وارد شبکه کنند. با این روش هزینه های ترمینیشن به شدت کاهش می یابد. دلیل این کاهش، ارایه هزینه های ترمینشن پایین مربوط به شبکه های خانگی توسط اپراتورها است.

معماری MVTS II

image_softswitch_2.jpg


MVTS II تشکیل شده است از دو زیر سیستم 1- مدیر ترافیک: در این قسمت هسته هوش مصنوعی سیستم قرار دارد که منطق تجاری Carrier ها را پیاده سازی می کند و سویچ ترافیک یک نقطه ورودی به شبکه، پردازش درخواست های SIP و H.323 ، توزیع بار بین واحدهای پردازش تماس، اداره کردن تماس هاس VoIP تحت نظر مدیر ترافیک تولید داده های نشست تماس را فراهم می کند. قسمت سوییچ ترافیک دارای عملکردهای زیر است.

# Load Balancer
# H.323 Gatekeeper
# SIP Registrar
# Signaling Node
# Media Node​

خصوصیات MVTS II

Session Routing

Elaborate dynamic look-ahead routing based on:

* cost (LCR etc.)
* route ASR
* QoS
* average call duration (ACD)
* gateway/route load
* route capacity
* precedence/accessibility of destination GW
* number of calling/called party
* routing groups
* equipment groups
* day of week/time of day
* ENUM registry lookups

Load Balancing:

* Between signaling servers in distributed configuration (for better fault-tolerance)



Interoperability

Carrier-to-carrier and carrier-to-enterprise interoperability:

* Support for H.323 and SIP dialects
* Two-way SIP/H.323 conversion
* SIP & H.323 proxy
* Codec support and conversion (G.729, G.729A, G.723.1, G711A-Law, G.711mU-Law, GSM, GSM FR, Speex, iLBC)
* T.38 fax passthrough

Network Security

* Network Topology Hiding
* DoS (Denial of Service) attack prevention
* Call Admission Control (max calls on ingress, max calls on egress, total max calls per direction/route)
* Call authorization by IP address or user name and password, based on
o data from internal MVTS II configurations
o data from external billing system

Call Statistics and Analysis

* Real-time monitoring of ASR, QoS, ACD, disconnect codes
* Call statistics monitoring by destination/GW
* CDR-based call analysis
* СDR in plain text format convenient for analysis and preliminary debugging
* CDR filtering by any call parameter



Billing and Accounting

CDR (Call Detail Records)

* Single point for CDR collection
* 69 fields for exhaustive call analysis and preliminary debugging (Call ID, Disconnect Codes, Connect Time, Elapsed Time, QoS, Rate Plan Currency and more)
* All relevant call details for complex billing of end-users
* CDRs in MIND CTI and MVTS intrinsic formats

RADIUS AAA for integration with billing systems

* Cisco VSA compliant
* Real-time and postpaid billing1
* User authorization in billing system based on MVTS data (no authorization in MVTS required)
* Automated call blocking based on account balance

H.323 Gatekeeper and SIP Registrar Functionality

* Zone management
* RAS registration of terminal and other devices
* Dynamic registrations
* IP-to-IP GW (CAC based on originator IP address, no RAS authorization required)
* Capability to interoperate with upstream gatekeepers

Number Translation/Normalization

* Regexp-based number translation patterns and rules
* Number translation applied at ingress, egress or within MVTS
* Source/destination number translation as required by different carriers
* Source number disguise

___________________________
1 Add-on billing systems required

Supported protocols

* H.323 v.2 and later (including H.245 v.7, H.225 v.4)
* SIP v.2.0 (RFC 2543bis/3261)
* T.38
* RADIUS AAA

Operating systems

* SUSE Linux 2.4.x or later (Oracle DB)
* Debian GNU/Linux 3.1 (32bit platforms)
* Debian GNU/Linux Etch (64bit platforms)

Database

* Oracle 10.2

System Logs and Journals

* Call handling trace logs with selectable detail level options
* Billing and debug logs
* Call data extraction based on the call ID (log extractor script)

Fault Tolerance and Redundancy

* Remote SNMP monitoring by means of the MVTS Manager or SNMP-counter
* Embedded 'watch dog' timer
* Fault-triggered e-mail alerts to system administrator
* Failover MVTS server (system redundancy)

Manageability

* GUI Web interface
* System administration console

Minimal System Requirements

* Depend on the system configurations and required capacity

Capacity

* Up to 50,000 concurrent calls
* Call accretion rate (CAPS): 300
* New call handling latency: max 100 ms
* New registrations per second: up to 100
* New registration handling latency max 500 ms
* Number of supported dial peers: 10,000,000 and above
* Number of authentication objects: unlimited
* Number of authorizations per second: 300 and above with the total number of ID records 10,000,000 and above
* Authentication and authorization latency: 50 ms with the total number of ID records 10,000,000 and above
* Number of authenticated equipment belonging to an individual provider: unlimited

System dependability

* 99.999% and above

 
کلاسترینگ و لود بالانسینگ:

Network Load Balancing (NLB) Primarily intended to balance incoming
TCP/IP traffic. NLB is commonly used for web servers.

Server Clusters Implemented to provide failover services among the clustered
computers. The Cluster service is commonly used for database applications.
You can’t use both on the same server, but you can use the two cluster solutions
together to gain complementary functions—for example, making a database
application available to web site visitors
 

جدیدترین ارسال ها

بالا