Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

Tại sao đưa MAC vào quá trình switching ?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tại sao đưa MAC vào quá trình switching ?

    Tại sao người ta đưa địa chỉ MAC vào quá trình switching mà không sử dụng luôn địa chỉ IP ? Nghĩa là thay vì switch làm việc với MAC thì switch và router cùng làm việc với IP, bỏ luôn khái niệm lớp 2 trong mô hình mạng. Như vậy có được không ?

    Bài này mình không hỏi về nguyên lý hoạt động của switch, nguyên lý switching, ý nghĩa MAC, giao thức ARP, và v.v vì mình đã biết rồi. Nhưng mình chưa hiểu rõ tại sao cần đến khái niệm MAC trong quá trình switching mà sao không dùng luôn IP ? Mình không nói đến bỏ khái niệm MAC (MAC dùng định danh thiết bị khi tham gia vào mạng) mà chỉ nói đến loại bỏ MAC ra khỏi switching, switch không dùng MAC mà dùng IP thì có được hay không ? Khi switching dùng IP thì MAC sẽ được nằm trong gói IP, các thiết bị khác vẫn đọc được MAC để xác định thiết bị nào đã gửi. Tất nhiên khi thay đổi nguyên lý thì phải hoạt động của thiết bị cũng phải được design lại.

    Nếu thay thế MAC bằng IP trong switching thì mình thấy có vẻ như mạng vẫn chạy được, vẫn switching và routing tốt, mà ta lại bớt đi nhiều khái niệm, nhiều thủ tục và giao thức.

    Lấy ví dụ :
    + ở hiện tại : PC1 cần gửi message đến PC2 trong cùng lớp mạng (cùng 1 switch), nó cần biết dest IP, dest MAC. Nếu nó chưa biết MAC, nó sẽ gửi ARP request broadcast ra địa chỉ FFFFFFFFFFFF, switch nhận gói này, học được MAC của PC1, sau đó sw broadcast ARP ra các port, PC2 nhận được và reply trở lại, và sw học được MAC của PC2. Lần sau PC1 trao đổi với PC2 hoặc PC khác trao đổi với 2 PC này thì sw sẽ forward nay do đã học được MAC đang ở port nào.
    + Bây giờ giả sử bỏ nguyên lý switching bằng MAC mà dùng khái niệm switching bằng IP : PC1 gửi data cho PC2, PC1 không cần biết PC2 ở đâu vì điều này đã có sw lo. Khi sw nhận được gói tin từ PC1 muốn gừi cho PC2 mà sw chưa biết PC2 ở port nào, sw sẽ cache gói tin này lại và gửi 1 ARP request, đây không phải cái ARP hỏi MAC như trên mà nó là ARP hỏi IP, ARP này có dest IP là 255.255.255.255 được sw broadcast ra tất cả các port để hỏi xem ai có IP là PC2. Khi PC2 nhận được ARP này nó sẽ trả lời lại cho SW rằng "tui là PC2 đây", và sw học được IP2, sau đó nó sẽ forward cái gói IP đang cache cho PC2. Lần sau nếu 2 PC này nói chuyện với nhau thì sw nó đã có bảng "IP cache-table" nên nó sẽ forward gói IP ra đúng port.

    Vậy đâu là sự cần thiết phải đưa khái niệm MAC vào switching ?
    Last edited by invalid-password; 16-11-2007, 04:41 PM. Reason: x

  • #2
    Chào bác Invalid-Pasword.
    Mình là 1 thành viên mới. Thấy câu hỏi của bạn hay quá nên mình muốn hỏi lại bác một câu để nhờ bác giải thích cho mình chổ này nhé
    "Bây giờ giả sử bỏ nguyên lý switching bằng MAC mà dùng khái niệm switching bằng IP : PC1 gửi data cho PC2, PC1 không cần biết PC2 ở đâu vì điều này đã có sw lo. Khi sw nhận được gói tin từ PC1 muốn gừi cho PC2 mà sw chưa biết PC2 ở port nào, sw sẽ cache gói tin này lại và gửi 1 ARP request, đây không phải cái ARP hỏi MAC như trên mà nó là ARP hỏi IP, ARP này có dest IP là 255.255.255.255 được sw broadcast ra tất cả các port để hỏi xem ai có IP là PC2. Khi PC2 nhận được ARP này nó sẽ trả lời lại cho SW rằng "tui là PC2 đây", và sw học được IP2, sau đó nó sẽ forward cái gói IP đang cache cho PC2. Lần sau nếu 2 PC này nói chuyện với nhau thì sw nó đã có bảng "IP cache-table" nên nó sẽ forward gói IP ra đúng port."
    Vậy trong mạng LAN chúng ta có thể gán 1 địa chỉ IP public không? Nếu trong trường hợp của bác thì gói tin của bạn sẽ được forward thế nào?
    Cảm ơn bác trước nha.

    Comment


    • #3
      Mạng LAN thì không gán IP public, gán vô mạng LAN thì không truy ra lớp mạng đó ngoài Internet được. Ủa mà nếu MAC switching hay "IP switching" thì cũng đâu gán IP public vào LAN được đâu (Tui tạm gọi khi bỏ MAC switching xài IP là "IP switching").

      Vụ này có thể gây nhiều tranh luận, mong mọi người chỉ ra được vấn đề ở đâu (tất nhiên phải có vấn đề thì người ta mới đưa ra 2 cái "IP routing" và "MAC switching" chứ)

      Comment


      • #4
        Originally posted by invalid-password View Post
        Tại sao người ta đưa địa chỉ MAC vào quá trình switching mà không sử dụng luôn địa chỉ IP ? Nghĩa là thay vì switch làm việc với MAC thì switch và router cùng làm việc với IP, bỏ luôn khái niệm lớp 2 trong mô hình mạng. Như vậy có được không ?

        Bài này mình không hỏi về nguyên lý hoạt động của switch, nguyên lý switching, ý nghĩa MAC, giao thức ARP, và v.v vì mình đã biết rồi. Nhưng mình chưa hiểu rõ tại sao cần đến khái niệm MAC trong quá trình switching mà sao không dùng luôn IP ? Mình không nói đến bỏ khái niệm MAC (MAC dùng định danh thiết bị khi tham gia vào mạng) mà chỉ nói đến loại bỏ MAC ra khỏi switching, switch không dùng MAC mà dùng IP thì có được hay không ? Khi switching dùng IP thì MAC sẽ được nằm trong gói IP, các thiết bị khác vẫn đọc được MAC để xác định thiết bị nào đã gửi. Tất nhiên khi thay đổi nguyên lý thì phải hoạt động của thiết bị cũng phải được design lại.

        Nếu thay thế MAC bằng IP trong switching thì mình thấy có vẻ như mạng vẫn chạy được, vẫn switching và routing tốt, mà ta lại bớt đi nhiều khái niệm, nhiều thủ tục và giao thức.

        Lấy ví dụ :
        + ở hiện tại : PC1 cần gửi message đến PC2 trong cùng lớp mạng (cùng 1 switch), nó cần biết dest IP, dest MAC. Nếu nó chưa biết MAC, nó sẽ gửi ARP request broadcast ra địa chỉ FFFFFFFFFFFF, switch nhận gói này, học được MAC của PC1, sau đó sw broadcast ARP ra các port, PC2 nhận được và reply trở lại, và sw học được MAC của PC2. Lần sau PC1 trao đổi với PC2 hoặc PC khác trao đổi với 2 PC này thì sw sẽ forward nay do đã học được MAC đang ở port nào.
        + Bây giờ giả sử bỏ nguyên lý switching bằng MAC mà dùng khái niệm switching bằng IP : PC1 gửi data cho PC2, PC1 không cần biết PC2 ở đâu vì điều này đã có sw lo. Khi sw nhận được gói tin từ PC1 muốn gừi cho PC2 mà sw chưa biết PC2 ở port nào, sw sẽ cache gói tin này lại và gửi 1 ARP request, đây không phải cái ARP hỏi MAC như trên mà nó là ARP hỏi IP, ARP này có dest IP là 255.255.255.255 được sw broadcast ra tất cả các port để hỏi xem ai có IP là PC2. Khi PC2 nhận được ARP này nó sẽ trả lời lại cho SW rằng "tui là PC2 đây", và sw học được IP2, sau đó nó sẽ forward cái gói IP đang cache cho PC2. Lần sau nếu 2 PC này nói chuyện với nhau thì sw nó đã có bảng "IP cache-table" nên nó sẽ forward gói IP ra đúng port.

        Vậy đâu là sự cần thiết phải đưa khái niệm MAC vào switching ?
        :D

        nào, thì mình lại tranh luận với bác típ nào :D

        Mac là quá trình lớp 2, IP là quá trình lớp 3, nhưng sao bác muốn bỏ mac , lại muốn có MAC trong gói IP :D , theo mình trong gói IP không có MAC, chỉ trong frame lớp 2 (header, trailer mới có thông tin gói IP trong đó), ở máy đích khi chuyển từ lớp 2 lên lớp 3 mới loại bỏ thông tin lớp 2 (MAC, header, trailer) và chỉ còn thông tin về IP.

        Có thể là đã tốn quá nhiều IP cho các thiết bị khác rồi mà họ không muốn dùng địa chỉ IP cho switch nữa :D. Bản chất của switch là chuyển mạch, không phải định tuyến (lớp 2 - không nói đến các switch layer 3), mà quá trình chuyển mạch thì dùng địa chỉ MAC lớp 2.

        :X:X:106::106:
        no car...no house...no money, but have only a sharing and friendly heart. What's the most important thing in this life "Heart or Money ?". Anything else can stead money ?

        :32::53::X:106:

        Nothing last forever...

        Comment


        • #5
          Thì bỏ đi khái niệm lớp 2, lấy lớp 3 để chạy, và switch chạy lớp 3, switching bằng IP, còn router vẫn chạy lớp 3, routing cũng bằng IP. Lúc này switch vẫn hoạt động như cũ và router vẫn route được như cũ. Nghĩa là 2 thằng đó vẫn chạy được như cách tui nói ở trên.

          Còn chỗ tui nói MAC nằm trong IP nghĩa là khi không còn dùng MAC làm địa chỉ để switching nữa (dùng IP để switching) thì ta có thể bỏ nó đi luôn. Nhưng MAC cho biết tên hãng sx thiết bị và mã sản phẩm, nên để "more details" thì ta có thể thiết kế gói IP thêm 48 bit để chứa MAC. Lúc này khi gói IP được switch chuyển đến một PC thì PC đó có thể extract MAC ra để lấy chút thông tin (lcòn không cần thông tin đó thì bỏ qua).

          Còn về lý do tốn nhiều IP thì không phải lý do chính đáng, vì nếu quyết định sử dụng switching bằng IP thì người ta có thể xài IP ver 6, tha hồ dùng.

          Bản chất của switch là chuyển mạch, nhưng nếu như giả thuyết tui nói chuyển qua xài switching bằng IP thì switch vẫn làm công tác chuyển mạch đó thôi (giống "nguyên lý" tui nêu ở trên).
          Last edited by invalid-password; 16-11-2007, 08:43 PM. Reason: x

          Comment


          • #6
            đơn giản IP thông dụng như tiếng Anh nhưng IP ko phải là duy nhất, giả sử hệ thống của bác đang xài IP chuyển qua IPX hay Apple Talk thì bác thích thay phần mềm hay thay switch? chưa kể là gặp 1 hệ thống rắc rối chạy 1 lúc 2 - 3 loại protocol?

            Comment


            • #7
              Originally posted by invalid-password View Post
              Thì bỏ đi khái niệm lớp 2, lấy lớp 3 để chạy, và switch chạy lớp 3, switching bằng IP, còn router vẫn chạy lớp 3, routing cũng bằng IP. Lúc này switch vẫn hoạt động như cũ và router vẫn route được như cũ. Nghĩa là 2 thằng đó vẫn chạy được như cách tui nói ở trên.

              Còn chỗ tui nói MAC nằm trong IP nghĩa là khi không còn dùng MAC làm địa chỉ để switching nữa (dùng IP để switching) thì ta có thể bỏ nó đi luôn. Nhưng MAC cho biết tên hãng sx thiết bị và mã sản phẩm, nên để "more details" thì ta có thể thiết kế gói IP thêm 48 bit để chứa MAC. Lúc này khi gói IP được switch chuyển đến một PC thì PC đó có thể extract MAC ra để lấy chút thông tin (lcòn không cần thông tin đó thì bỏ qua).

              Còn về lý do tốn nhiều IP thì không phải lý do chính đáng, vì nếu quyết định sử dụng switching bằng IP thì người ta có thể xài IP ver 6, tha hồ dùng.

              Bản chất của switch là chuyển mạch, nhưng nếu như giả thuyết tui nói chuyển qua xài switching bằng IP thì switch vẫn làm công tác chuyển mạch đó thôi (giống "nguyên lý" tui nêu ở trên).
              :D

              Mục đích của switch là để giảm kích thước của miền đụng độ, switch có thể tạo ra một mạch ảo (virtual circuit) giữa 2 host kết nối giữa 2 port của switch kết nối đến 2 host đó. Switch sử dụng bảng chuyển mạch (CAM - Content Addressable Memory, bảng này lưu thông tin của MAC nguồn và MAC đích giữa 2 thiết bị kết nối), nếu CAM đã học được MAC nguồn và MAC đích thì nó sẽ thiết lập một mạch ảo giữa 2 thiết bị :D, và các mạch ảo này ko hề đụng độ với các mạch ảo khác, kết nối đến các thiết bị khác. Router chuyển mạch lớp 3 (sử dụng bảng định tuyến - dựa trên địa chỉ lớp mạng).

              bản thân MAC là địa chỉ "vật lý", còn IP là địa chỉ "logic" : quá trình vật lý bao giờ cũng diễn ra nhanh hơn so với quá trình logic.

              thêm một điều nữa :D, khá thú vị là nếu chỉ có một subnet LAN, mặc định là nếu các máy trong cùng subnet có cùng địa mạng, chỉ khác nhau phần host, các máy trong cùng subnet không "phải" định tuyến :D, do vậy coi như không sử dụng thông tin "lớp mạng", tức là không sử dụng địa chỉ IP, vậy các máy trong cùng subnet muốn gửi dữ liệu cho nhau, phải dùng địa chỉ lớp 2 - đó là địa chỉ MAC :D,

              mạng Lan được tạo nên từ các PCs, => switch được xây dựng dựa trên các địa chỉ MAC của card mạng (NIC), để hình thành nên bảng chuyển mạch CAM, và tạo nên một mạng LAN không có miền đụng độ

              :X:X:106::106:
              no car...no house...no money, but have only a sharing and friendly heart. What's the most important thing in this life "Heart or Money ?". Anything else can stead money ?

              :32::53::X:106:

              Nothing last forever...

              Comment


              • #8
                Mình thấy câu trả lời của Bác Trainingit là thuyết phục nhất.
                Nếu có câu trả lời nào khác nữa mình nghĩ đó sẽ là câu trả lời của Bác Invalid-Pasword.
                =))
                :D

                Comment


                • #9
                  Để tui phản biện tiếp nghe :

                  Originally posted by trainingit View Post
                  :D

                  Mục đích của switch là để giảm kích thước của miền đụng độ, switch có thể tạo ra một mạch ảo (virtual circuit) giữa 2 host kết nối giữa 2 port của switch kết nối đến 2 host đó. Switch sử dụng bảng chuyển mạch (CAM - Content Addressable Memory, bảng này lưu thông tin của MAC nguồn và MAC đích giữa 2 thiết bị kết nối), nếu CAM đã học được MAC nguồn và MAC đích thì nó sẽ thiết lập một mạch ảo giữa 2 thiết bị :D, và các mạch ảo này ko hề đụng độ với các mạch ảo khác, kết nối đến các thiết bị khác.
                  Đồng ý, nhưng bây giờ bỏ đi MAC thay bằng switching IP. Switch vẫn tạo ra được một mạch ảo giữa 2 host kết nối giữa 2 port. Switch sử dụng "bảng chuyển mạch IP" thay cho "bảng MAC". Bảng chuyển mãch IP này lưu thông tin IP nguồn và IP đích giữa 2 thiết bị kết nối, kèm theo thông tin IP đó switch nó đã học được ở port nào. Như vậy khi nhận được gói IP thì nó sẽ tra trong "Bảng chuyểnn mạch IP" để biết sẽ forward ra port nào chứ không đẩy đi hết, và vị vậy vẫn tạo ra mạch ảo không đụng độ.
                  Tui đâu thấy gì khác nhau đâu.

                  Originally posted by trainingit View Post
                  :D
                  bản thân MAC là địa chỉ "vật lý", còn IP là địa chỉ "logic" : quá trình vật lý bao giờ cũng diễn ra nhanh hơn so với quá trình logic.
                  Bây giờ giả sử bỏ đi MAC trong switching mà switch bằng IP, tức là bỏ đi khái niệm địa chỉ "vật lý", còn mỗi IP thôi. Lúc này thay vì đọc 6 byte MAC thì switch nó đọc 4 byte IP để chuyển mạch. Tui thấy vẫn nhanh như nhau (nếu không nói đọc 4 byte chắc nhanh hơn 6 byte !!!)

                  Originally posted by trainingit View Post
                  :D

                  thêm một điều nữa :D, khá thú vị là nếu chỉ có một subnet LAN, mặc định là nếu các máy trong cùng subnet có cùng địa mạng, chỉ khác nhau phần host, các máy trong cùng subnet không "phải" định tuyến :D, do vậy coi như không sử dụng thông tin "lớp mạng", tức là không sử dụng địa chỉ IP, vậy các máy trong cùng subnet muốn gửi dữ liệu cho nhau, phải dùng địa chỉ lớp 2 - đó là địa chỉ MAC :D,
                  Cái này tui cũng không thấy có gì khác khi bỏ đi MAC cả xét về switching. Lúc này vẫn duy trì khái niệm subnet và default gateway, tuy nhiên, trong gói tin IP thiết kế thêm 1 trường để lưu "secondary IP" trong trường hợp gửi ra ngoài mạng (cái này quên nói vì nó thuộc bên routing). Trường hợp gửi trong subnet thì PC gửi dest IP (switch sẽ đọc IP này để switch), trường hợp gửi ra ngoài mạng thì PC sẽ gửi dest IP là IP của default gateway (tức router), còn "secondary IP" mới là IP thực của đích đến. Lúc này switch vẫn đọc dest IP (không quan tâm "secondary IP") và switching nó ra port của router, còn router thì đọc "secondary IP" để routing đi tiếp. Như vậy, switch vẫn hoạt động với tốc độ bình thường, còn router vẫn hoạt động y như cũ (router đọc "sec IP" chứ không phải "dest IP", 2 thằng này giống y như 2 khái niệm IP và MAC thôi, nhưng nó ở phía router, còn tui muốn nói ở bài này là ở phía switch, vì ta sẽ không cần đến MAC nữa).

                  Mọi người tham gia tranh luận nhiều vào nhé, mới nhìn thấy ra vấn đề.

                  Comment


                  • #10
                    Originally posted by harmonylove View Post
                    đơn giản IP thông dụng như tiếng Anh nhưng IP ko phải là duy nhất, giả sử hệ thống của bác đang xài IP chuyển qua IPX hay Apple Talk thì bác thích thay phần mềm hay thay switch? chưa kể là gặp 1 hệ thống rắc rối chạy 1 lúc 2 - 3 loại protocol?
                    Thì người ta chế ra cái swich có khả năng support switching IP, IPX và nhiều thứ khác, giống như router có thể support cùng lúc nhiều routing protocol (vẫn chạy tốt chứ có quá chậm đâu). Khi đã không dùng đến MAC switching thì switch làm việc ở lớp 3 luôn, nó nhận gói, xét xem là gói IP hay IPX và sẽ có bảng "IP table", bảng "IPX table" để quyết định forward ra port nào.

                    Comment


                    • #11
                      Originally posted by invalid-password View Post
                      Để tui phản biện tiếp nghe :



                      Đồng ý, nhưng bây giờ bỏ đi MAC thay bằng switching IP. Switch vẫn tạo ra được một mạch ảo giữa 2 host kết nối giữa 2 port. Switch sử dụng "bảng chuyển mạch IP" thay cho "bảng MAC". Bảng chuyển mãch IP này lưu thông tin IP nguồn và IP đích giữa 2 thiết bị kết nối, kèm theo thông tin IP đó switch nó đã học được ở port nào. Như vậy khi nhận được gói IP thì nó sẽ tra trong "Bảng chuyểnn mạch IP" để biết sẽ forward ra port nào chứ không đẩy đi hết, và vị vậy vẫn tạo ra mạch ảo không đụng độ.
                      Tui đâu thấy gì khác nhau đâu.



                      Bây giờ giả sử bỏ đi MAC trong switching mà switch bằng IP, tức là bỏ đi khái niệm địa chỉ "vật lý", còn mỗi IP thôi. Lúc này thay vì đọc 6 byte MAC thì switch nó đọc 4 byte IP để chuyển mạch. Tui thấy vẫn nhanh như nhau (nếu không nói đọc 4 byte chắc nhanh hơn 6 byte !!!)



                      Cái này tui cũng không thấy có gì khác khi bỏ đi MAC cả xét về switching. Lúc này vẫn duy trì khái niệm subnet và default gateway, tuy nhiên, trong gói tin IP thiết kế thêm 1 trường để lưu "secondary IP" trong trường hợp gửi ra ngoài mạng (cái này quên nói vì nó thuộc bên routing). Trường hợp gửi trong subnet thì PC gửi dest IP (switch sẽ đọc IP này để switch), trường hợp gửi ra ngoài mạng thì PC sẽ gửi dest IP là IP của default gateway (tức router), còn "secondary IP" mới là IP thực của đích đến. Lúc này switch vẫn đọc dest IP (không quan tâm "secondary IP") và switching nó ra port của router, còn router thì đọc "secondary IP" để routing đi tiếp. Như vậy, switch vẫn hoạt động với tốc độ bình thường, còn router vẫn hoạt động y như cũ (router đọc "sec IP" chứ không phải "dest IP", 2 thằng này giống y như 2 khái niệm IP và MAC thôi, nhưng nó ở phía router, còn tui muốn nói ở bài này là ở phía switch, vì ta sẽ không cần đến MAC nữa).

                      Mọi người tham gia tranh luận nhiều vào nhé, mới nhìn thấy ra vấn đề.
                      =)) =))

                      hehe, bác phản biện thì để mình lại tiếp cho bác nhé :D , xem lần này bác phản biện thế nào nữa nhé :))

                      Nhiều khi phải dựa vào lịch sử phát triển mạng, từ thuở "hồng hoang" của mạng, khi mạng còn chưa có switch, router... mạng chỉ có một subnet đơn lẻ kết nối đến hub, và không có kết nối Intranet, Internet, không kết nối đến các subnet khác... và khi người ta còn chưa nghĩ ra địa chỉ IP ... thì địa chỉ MAC đã được gán "chết" vào trong card mạng rồi :D

                      Mạng Lan hoạt động giống như là một miền quảng bá, trong cùng một subnet LAN, một máy muốn truyền dữ liệu muốn truyền cho máy khác chỉ cần hỏi trong subnet "chú MAC" này là máy nào, nó gửi dữ liệu xuống môi trường truyền (media physical), và các máy trong mạng "lắng nghe" các gói dữ liệu này, nhưng chỉ máy nào có địa chỉ MAC trùng với địa chỉ MAC đích của gói dữ liệu mới nhận gói dữ liệu này.

                      Khi các mạng đã phát triển ngày một lớn hơn, kết nối nhiều hơn, cần mở rộng hơn... cần nhiều băng thông hơn, cần giảm đụng độ trong môi trường truyền... và cần kết nối nhiều subnett hơn... và kết nối ra ngoài Internet, router và switch ra đời, mạng giờ đây đã phát triển hơn nhưng vẫn giữ những "quy luật" ban đầu:

                      - các máy trong cùng 1 subnet không sử dụng thông tin lớp mạng để chuyển gói dữ liệu (chỉ dùng địa chỉ MAC), nhiều mạng lan chỉ có 1 subnet đơn và switch cũng được thiết kế để phục vụ cho mục đích này => do vậy switch dùng địa chỉ MAC. Switch chuyển mạch frame lớp 2, sử dụng bảng CAM (Content Addressable Memory - ghi nhớ địa chỉ MAC của các host).

                      - các máy không cùng subnet phải ngăn cách với nhau bởi router (hoặc IP router), và phải định tuyến gói dữ liệu dựa vào thông tin lớp mạng => sử dụng địa chỉ mạng để chuyển mạch dữ liệu (vì MAC đã dùng cho mục đích truyền gói dữ liệu trong cùng subnet rồi =)) ). Router dùng bảng định tuyến với thông tin đường đi tới các subnet khác, router chuyển mạch gói lớp 3 (dùng thông tin địa chỉ IP).

                      Túm lại:

                      Switch : chuyển mạch lớp 2 dùng địa chỉ MAC
                      Router : chuyển mạch lớp 3 dùng địa chỉ IP

                      tuy ko nói đến mô hình OSI ở đây, nhưng bác cũng không thể lộn ngược mô hình OSI này được =))

                      :X:X:106::106:
                      Last edited by trainingit; 17-11-2007, 07:59 AM.
                      no car...no house...no money, but have only a sharing and friendly heart. What's the most important thing in this life "Heart or Money ?". Anything else can stead money ?

                      :32::53::X:106:

                      Nothing last forever...

                      Comment


                      • #12
                        thôi đừng đi lạc vấn đề quá, vấn đề là bác thử nghĩ xem liệu chỉ có lớp 3 thôi thì mọi thứ có thể suông sẻ? một gói IP hay IPX... liệu có thể truyền qua nhiều loại môi trường khác nhau? khi bác học ethernet bác thấy có MAC, khi bác học PPP bác thấy địa chỉ lớp 2 ko quan trọng, khi bác học Frame Relay bác ko thấy MAC nữa mà có DLCI... tại sao vậy? liệu 1 gói data chỉ có 1 địa chỉ IP duy nhất thì đã đủ? Vấn đề truyền dữ liệu là 1 vấn đề ko đơn giản, và trước 1 vấn đề lớn người ta phải chia nhỏ nó ra để giải quyết từng phần, nếu có sai sót phần nào thì xử lý phần đó, nếu có cải tiến phần nào thì cũng chỉ sửa ở phần đó mà ko ảnh hưởng đến các phần khác, và cuối cùng người ta chấp nhận sự phức tạp của nó để đổi lấy những lợi ích lớn hơn, lấy ví dụ lợi ích của frame relay (bác tự nghiệm)

                        Comment


                        • #13
                          Tui đâu có lộn ngược mô hình OSI, cái mô hình đó nó muốn giữ nguyên, bỏ bớt hay thêm mấy lớp nữa tùy nó. Ở đây tui giả thiết kông dùng lớp số 2 và MAC nữa, mà dùng trực tiếp IP. Mà thôi không nói đến lớp nào nữa. Bây giờ MAC ra đời trước IP ra sau, thì dẹp cái MAC đi, xài IP thôi cũng switching và routing được vậy.

                          Hồi xưa swtiching trong mạng thì xài MAC, bây giờ tui giả sử switching trong mạng xài IP, thì mạng LAN vẫn là một miền quảng bá (nó muốn quảng bá thì xài IP broadcast trong subnet đó, hoặc IP
                          255.255.255.255)

                          Originally posted by trainingit View Post
                          Mạng Lan hoạt động giống như là một miền quảng bá, trong cùng một subnet LAN, một máy muốn truyền dữ liệu muốn truyền cho máy khác chỉ cần hỏi trong subnet "chú MAC" này là máy nào, nó gửi dữ liệu xuống môi trường truyền (media physical), và các máy trong mạng "lắng nghe"
                          các gói dữ liệu này, nhưng chỉ máy nào có địa chỉ MAC trùng với địa chỉ MAC đích của gói dữ liệu mới nhận gói dữ liệu này.
                          Cái này là từ thời Hub hồi xưa, bây giờ chuyển qua Switching bằng IP vẫn xài được cái hub đó. Máy muốn truyền dữ liệu thì nó gửi gói IP ra hub, hub nó nhân gói ra về vật lý rồi send tất cả các port. Máy nào nhận được thấy trùng IP của nó thì xử lý.

                          Còn các máy khác subnet thì phải ngăn cách bởi router, thì khi bỏ MAC đi xài IP switching thì nó vẫn ngăn cách với nhau bởi router, khi PC muốn truyền cùg lớp mạng thì nó đưa IP trực tiếp và switch làm nhiệm vụ chuyển mạch, còn khi PC nó gửi ra ngoài lớp mạng thì nó đưa IP của default gateway và switch sẽ forward đến router, còn router đọc "secondary IP" (như tui nói ở trên) để routing, tức là vẫn chạy được.

                          Muốn giải thích cái này tui nghĩ các pác không nên giải thích theo kiểu "Lấy nguyên lý đã có ra giải thích", mà phải chứng minh theo kiểu "Nếu làm vậy sẽ không hoạt động được".

                          Comment


                          • #14
                            Originally posted by harmonylove View Post
                            thử nghĩ xem liệu chỉ có lớp 3 thôi thì mọi thứ có thể suông sẻ?
                            Tui thấy tại sao nhà không có 2 số nhà mà chỉ có 1 số, nhưng vẫn gửi nhận được thư ?!

                            Originally posted by harmonylove View Post
                            trước 1 vấn đề lớn người ta phải chia nhỏ nó ra để giải quyết từng phần, nếu có sai sót phần nào thì xử lý phần đó, nếu có cải tiến phần nào thì cũng chỉ sửa ở phần đó mà ko ảnh hưởng đến các phần khác, và cuối cùng người ta chấp nhận sự phức tạp của nó để đổi lấy những lợi ích lớn hơn, lấy ví dụ lợi ích của frame relay (bác tự nghiệm)
                            Tui cũng chưa đồng ý với cách giải thích theo kiểu "phải chia nhỏ nó ra, chia thành 2 chứ để 1 thì khó giải quyết". Nếu vậy tại sao không thiết kế thêm 1 lớp nữa cho "dễ giải quyết hơn", tức là OSI có 8 lớp ? Có thể giải thích được cần 2 địa chỉ MAC & IP là đủ, nếu chỉ 1 thì thiếu, và nếu 3 thì dư ?

                            Khoan đề cập đến frame relay, vụ này sẽ tui sẽ có topic khác để thắc mắc.

                            Tui thấy gần gần đạt đến vấn đề rồi, có điều chưa có pác nào gút lại 1 bài ngắn gọn cho dễ hiểu.

                            Comment


                            • #15
                              Originally posted by invalid-password View Post
                              Tui đâu có lộn ngược mô hình OSI, cái mô hình đó nó muốn giữ nguyên, bỏ bớt hay thêm mấy lớp nữa tùy nó. Ở đây tui giả thiết kông dùng lớp số 2 và MAC nữa, mà dùng trực tiếp IP. Mà thôi không nói đến lớp nào nữa. Bây giờ MAC ra đời trước IP ra sau, thì dẹp cái MAC đi, xài IP thôi cũng switching và routing được vậy.

                              Hồi xưa swtiching trong mạng thì xài MAC, bây giờ tui giả sử switching trong mạng xài IP, thì mạng LAN vẫn là một miền quảng bá (nó muốn quảng bá thì xài IP broadcast trong subnet đó, hoặc IP
                              255.255.255.255)



                              Cái này là từ thời Hub hồi xưa, bây giờ chuyển qua Switching bằng IP vẫn xài được cái hub đó. Máy muốn truyền dữ liệu thì nó gửi gói IP ra hub, hub nó nhân gói ra về vật lý rồi send tất cả các port. Máy nào nhận được thấy trùng IP của nó thì xử lý.

                              Còn các máy khác subnet thì phải ngăn cách bởi router, thì khi bỏ MAC đi xài IP switching thì nó vẫn ngăn cách với nhau bởi router, khi PC muốn truyền cùg lớp mạng thì nó đưa IP trực tiếp và switch làm nhiệm vụ chuyển mạch, còn khi PC nó gửi ra ngoài lớp mạng thì nó đưa IP của default gateway và switch sẽ forward đến router, còn router đọc "secondary IP" (như tui nói ở trên) để routing, tức là vẫn chạy được.

                              Muốn giải thích cái này tui nghĩ các pác không nên giải thích theo kiểu "Lấy nguyên lý đã có ra giải thích", mà phải chứng minh theo kiểu "Nếu làm vậy sẽ không hoạt động được".

                              sao mình giải thích cụ thể như vậy mà bạn vẫn không hiểu nhỉ, bác cứ phức tạp hóa vấn đề quá, nhưng mình thấy câu hỏi của bác có vẻ như là "hơi sai mật khẩu rồi". Có nhiều người muốn chứng mình 1 = 2 và dùng nhiều định lý đúng, nhưng trong quá trình chứng minh đó vẫn có 1 chỗ sai.

                              giả sử bây giờ switch và router đều cùng chuyển mạch lớp 3 (sử dụng thông tin về lớp mạng)

                              vd với một mạng đơn giản gồm 2 subnet LAN

                              Lan01 - Switch01 - Router - Switch02 - Lan02

                              định tuyến IP chỉ chuyển qua router nếu khác subnet Lan, bác có thấy là vấn đề sẽ rất phức tạp không (nếu không dùng địa chỉ MAC ở đây), mà chỉ dùng IP khi đó router làm sao còn phân biệt được là địa chỉ IP đó thuộc subnet Lan nào nữa, và có cần thiết nếu một máy ở Lan01 muốn gửi dữ liệu đến một máy khác trong Lan01 - lại phải gửi dữ liệu qua Router ??? rồi lại trở về một máy trong cùng Lan01 không,

                              bác có cách nào làm cho cả switch và router hoạt động được nếu chỉ dùng cùng một chuyển mạch dựa theo địa chỉ lớp mạng mà không bị tình trạng như vậy ???

                              nếu switch có chuyển mạch lớp mạng được như router thì cần chi router nữa, mà thực sự nếu có làm được như bác thì router ngoài nhiệm vụ routing và packet switching sẽ phải tính toán thêm một cái nữa : đó là phải xem IP đó thuộc về subnet nào, hay cùng subnet và khi đó làm cho hoạt động định tuyến trở nên chậm hơn. :D

                              :X:X:106::106:
                              Last edited by trainingit; 17-11-2007, 11:52 AM.
                              no car...no house...no money, but have only a sharing and friendly heart. What's the most important thing in this life "Heart or Money ?". Anything else can stead money ?

                              :32::53::X:106:

                              Nothing last forever...

                              Comment

                              Working...
                              X