Birden fazla seri sunucu, TCP İstemci modunda merkezi sunucudaki aynı dinleme portuna bağlanabilir. Önemli olan her cihaz için ayrı bir dış erişim portu açmak değil; merkezi programın birden fazla bağlantıyı aynı anda yönetebilmesi, her bağlantının hangi cihaza karşılık geldiğini belirleyebilmesi ve protokole uygun şekilde doğru veri gönderip alabilmesidir. Başarılı bağlantı, doğru cihaz kimliği ve seri iletişim hizmetinin normal çalışması, her biri ayrı ayrı doğrulanması gereken üç koşuldur.
1. Önce kolayca karıştırılabilen iki senaryoyu ayırt edin
Bu makale, “sahadaki birden fazla seri sunucunun tek bir merkezi programa bağlanması” konusunu ele almaktadır. Her seri sunucu kendi seri cihazının verilerini merkeze gönderir; merkez de istekleri ilgili bağlantı üzerinden sahaya iletir. Örneğin, birbirinden bağımsız üç güç dağıtım panosunun her birinde bir seri sunucu bulunur ve merkezin belirli bir ölçümün hangi panodan geldiğini bilmesi ve kontrol komutlarını doğru konuma geri göndermesi gerekir.
Diğer bir senaryo ise “birden fazla bilgisayarın aynı seri sunucuya erişmesidir.” Bu, aynı seri cihazın birden fazla ana birim tarafından aynı anda işletilip işletilemeyeceğiyle ilgilidir ve istek çakışmalarına ve yanıtların hangi isteğe ait olduğunun belirsizleşmesine neden olabilir. Birden fazla TCP bağlantısının desteklenmesi, güvenli çoklu ana birim kontrolünün otomatik olarak desteklendiği anlamına gelmez. Bu iki senaryo cihazların bağlantı yönü, oturum sayısı ve zamanlama sorunları açısından farklıdır ve yalnızca “otomatik sorgulama yeterlidir” denilerek açıklanamaz.
2. Tek bir porta neden birden fazla cihaz bağlanabilir?
Bir TCP portu, merkezi programın hizmet giriş noktası olarak düşünülebilir; ancak yalnızca tek bir cihazın kullanabileceği fiziksel bir yuva değildir. Program, belirtilen bir adres ve port üzerinde dinleme yapar. Bir bağlantı kabul edildikten sonra işletim sistemi, o oturum için bağımsız bir bağlı soket sağlar. Soket, programın ağ verilerini okuduğu ve yazdığı arayüzdür; başlangıçtaki dinleme giriş noktası ise diğer cihazların bağlanmasını beklemeye devam eder.
Bir ağda bir TCP bağlantısı, her iki tarafın IP adresleri ve portlarının birleşimiyle ayırt edilir. Tüm cihazlar merkezdeki aynı porta erişse bile kaynak adresleri veya kaynak portları farklı olabilir. Merkez, her bağlantının alım tamponunu, durumunu ve işleme görevini ayrı ayrı tutmalı ve farklı bağlantılardan alınan baytları doğrudan aynı ayrıştırma kuyruğunda birleştirmemelidir.
Merkezin 6000 portunda dinleme yaptığını ve A, B ve C cihazlarının ayrı ayrı aktif olarak bağlantı başlattığını varsayalım. Bunlar, aynı oturumu sırayla kullanan üç cihaz değil, birbirinden bağımsız üç oturumdur. 6000 yalnızca bir örnektir; önerilen sabit bir değer değildir. Gerçek bağlantı sayısı merkezi yazılım, cihazın donanım yazılımı, sistem kaynakları ve ağ politikalarıyla sınırlıdır; “tek port” ifadesinden sınırsız cihaz kapasitesi sonucu çıkarılamaz.

3. Bağlantı kurulduktan sonra cihaz kimliğinin neden hâlâ belirlenmesi gerekir?
Bir bağlantı, merkeze “bu bayt grubunun hangi oturumdan geldiğini” söyleyebilir; ancak “bunun hangi güç dağıtım panosu olduğunu” mutlaka söylemez. Genel ağ erişimi NAT üzerinden gerçekleşebilir; bu, yönlendiricinin ağ adreslerini ve portlarını yeniden yazması anlamına gelir. Birden fazla cihaz aynı çıkış IP bilgisiyle görünebilir. Bağlantı kesilip yeniden kurulduğunda kaynak portu da değişebilir; dolayısıyla geçici bir kaynak portu kalıcı olarak cihaz numarası şeklinde kullanılamaz.
Kimlik eşlemesinde doğrulanmış sabit ağ yapılandırması veya uygulama protokolünde tanımlanmış kayıt mesajları, istasyon numaraları ve kimlik doğrulama bilgileri kullanılabilir. Hangisinin seçileceği, terminalin, seri sunucunun ve merkezi yazılımın gerçekte neleri desteklediğine bağlıdır. Şeffaf bir seri sunucu genellikle yalnızca baytları taşır; verilere otomatik olarak benzersiz bir kimlik ekleyeceği varsayılmamalıdır. Kayıt paketi işlevi gerekiyorsa ilgili modelin ve donanım yazılımının belgeleri kontrol edilmelidir.
Seri bağımlı birim adresi de tüm sistem genelinde mutlaka benzersiz değildir. Örneğin, birbirinden bağımsız üç panodaki sayaçların tümü 1 istasyon numarasına ayarlanmışsa, her biri ayrı bir bağlantıya ait olduğu sürece merkez bunları “doğrulanmış pano numarası ve istasyon numarası” ile ayırt edebilir. Ancak baytlar birbirine karıştırılır ve yalnızca 1 istasyon numarası görülürse cihaz kolayca yanlış tanımlanabilir. İstasyon numarası, protokol içindeki bir adrestir ve seri sunucunun bütününü küresel ölçekte benzersiz olarak tanımlayan kimlikle aynı değildir.
Bağlantı kurulduktan sonra önce kimliği doğrulayın, ardından hizmet işlemlerine izin verin. Aynı kimlik tekrar tekrar çevrimiçi olduğunda yeni bağlantının reddedileceği, eski bağlantının değiştirileceği veya durumun bir yedeklilik tasarımına göre ele alınacağı açıkça belirlenmelidir. İki bağlantının fark edilmeden aynı cihaz kaydı için rekabet etmesine izin verilmemelidir. Cihazın kendi bildirdiği kimlik de güvenilir kimlik doğrulamasıyla aynı değildir; üretimde kullanılan bir ağda yetkilendirme ve erişim kontrolü de birlikte uygulanmalıdır.
4. Şeffaf iletim neden protokole dayalı çerçeveleme gerektirir?
Seri sunucu önce seri baytları alır, bunları geçici olarak bir tamponda saklar ve ardından Ethernet üzerinden gönderir; ters yönde de ağ baytlarını seri çıkışa iletir. Baud hızı, veri bitleri, eşlik biti, durdurma bitleri ve elektriksel arayüz yine sahadaki terminalle uyumlu olmalıdır. TCP, baytların sıralı iletiminden sorumludur ve sayaç yazmaçlarını, cihaz numaralarını veya kontrol komutlarını otomatik olarak anlamaz.
TCP bir bayt akışıdır ve merkezdeki tek bir okuma işlemi yarım mesaj veya iki mesaj alabilir. Uygulama, protokolün uzunluk, ayırıcı, sağlama toplamı veya durum kurallarına göre verileri biriktirip ayrıştırmalı ve ardından tamamlanmış mesajı işlemelidir. Şekildeki ABC ve DEF, anlamayı kolaylaştırmak için kullanılan bayt örnekleridir; gerçek Modbus çerçeveleri değildir. Tek bir ağ okuma işlemi, tüm protokoller için mesaj sınırı olarak kullanılamaz.

İstekler ve yanıtlar da bağlantı bazında yönetilmelidir. Merkez A bağlantısına bir istek gönderdiğinde B bağlantısından aldığı verileri A’nın yanıtı olarak değerlendirmemelidir. Aynı RS485 veri yolundaki birden fazla bağımlı birimin okunması gerektiğinde istekler protokole ve cihazın işlem süresine göre zamanlanmalı; sonraki işlem ancak yanıt veya zaman aşımı doğrulandıktan sonra gerçekleştirilmelidir. Paketleme bekleme süresi, ağ gecikmesi ve seri iletim süresinin tümü zaman aşımını etkiler. Tüm bekleme değerlerini sıfıra ayarlamak yerine parametreler tek tek test edilmelidir.
5. Yapılandırma sırasında veri yolunu bölüm bölüm kontrol edin
Önce merkezi programın dinleme adresini ve hizmet portunu yapılandırın; aynı anda birden fazla bağlantıyı kabul edebildiğini ve her bağlantının verilerini bağımsız olarak ayrıştırabildiğini doğrulayın. Ardından sahadaki her seri sunucuyu TCP İstemci moduna ayarlayın ve merkez adresi ile hedef portu girin. Yönetim web sayfası portunu hizmet portuyla karıştırmayın ve hem saha tarafını hem de merkez tarafını bağlantı bekleyecek şekilde ayarlamayın.
Ardından yönlendirme ve erişim politikalarını kontrol edin. Merkez bir iç ağdaysa genel ağdaki cihazlar yalnızca merkezin özel adresini kullanarak ona erişemez; kontrollü bir VPN, özel ağ veya onaylı bir eşleme düzeni gerekir. Bir portun açılması, ağ yolunun yalnızca bir parçasıdır ve cihaz kimliğini, protokol dönüşümünü veya uygulama yetkilendirmesini otomatik olarak sağlamaz. Güvenlik duvarı yalnızca gerekli kaynaklara ve hizmetlere izin vermeli; yönetim arayüzü hizmet portuyla birlikte gelişigüzel dış erişime açılmamalıdır.
Son olarak seri bağlantı kablolamasını ve parametrelerini doğrulayın, tek cihazlı asgari bir sistem kurun, istek ve yanıt içeriklerini doğrulayın ve ardından cihaz ekleyin. Eski bir makalede, sanal seri portların ve bir seri port yardımcı programının tüm çoklu cihaz erişim sorunlarını çözebileceği öne sürülmüştü; ancak bu her durumda geçerli değildir: sanal COM sürücüsü, merkezi program ve cihaz modu birbiriyle uyumlu olmalıdır. Özel olarak geliştirilen bir TCP programının da bağlantı yönetimini ve protokol ayrıştırmasını gerçekleştirmesi gerekir.
6. Bağlantı kesilmesi, yeniden bağlantı ve kabul sırasında neler test edilmelidir?
Ağ bağlantısı kesildikten sonra eski oturum hizmet kimliğini süresiz olarak elinde tutmamalıdır. Yeniden bağlantıda kimlik tekrar doğrulanmalı ve tamamlanmamış isteklerin nasıl ele alınacağına protokole göre karar verilmelidir. Güvenilir TCP iletimi, bir hizmet komutunun bağlantı kesilmesinden önce ve sonra tam olarak bir kez yürütüleceği anlamına gelmez. Başlatma/durdurma ve sıfırlama gibi işlemler, yalnızca zaman aşımı oluştuğu için koşulsuz olarak tekrar tekrar gönderilmemelidir. Yinelenen yürütmeyi önlemek için durum sorguları, işlem numaraları veya cihazın desteklediği mekanizmalar kullanılmalıdır.
Kabul testinde farklı cihazların ayırt edilebilir veriler döndürmesi sağlanabilir ve merkezde gösterilen bilgilerin gerçek cihazla eşleştiği tek tek doğrulanabilir. Ardından cihazları aynı anda bağlayın ve verilerin birbirine karışıp karışmadığını veya yanıtların yanlış tanımlanıp tanımlanmadığını test edin. Sonra cihazlardan birinin bağlantısını kesin; diğer cihazların çalışmaya devam edip edemediğini ve yeniden bağlanan cihazın doğru kayda dönüp dönmediğini kontrol edin. Bağlantı sayısı, seri gönderim ve alım sayaçları, zaman aşımları ve tampon durumları da kaydedilmeli; sürekli çalışma ve tepe yük koşulları test edilmelidir.
7. Cihaz seçerken gerçek çalışma modunu kontrol edin
Feichang FCT-1500 serisinin resmî web sitesindeki ayrıntılarında TCP Sunucu/İstemci, sanal seri port sürücüleri ve farklı RS232/422/485 yapılandırmaları listelenmektedir; bu seri, dağıtık seri cihazları ağa bağlamak için kullanılabilir. TCP İstemci modunun seçilmesi, sahadaki cihazların merkeze aktif olarak bağlantı kurmasına yardımcı olur; ancak merkezdeki kimlik eşlemesi ve istek zamanlaması yine genel çözümün bir parçasıdır. Resmî web sitesinde belirtilen kanal başına çoklu oturum özelliği, merkezi yazılımın kapasitesinin doğrulanmasının yerini tutamaz. Belirli arayüz, mod ve donanım yazılımı, sipariş edilen modele göre kontrol edilmelidir.
Şeffaf TCP erişimi ve Modbus RTU’dan TCP dönüşümü de ayrı ayrı doğrulanmalıdır. Protokol dönüşümü gerektiğinde gerçekten desteklenen modu seçip etkinleştirin ve şeffaf seri baytları doğrudan Modbus TCP mesajları olarak değerlendirmeyin. Genel sorun giderme için 2295 kaynağına başvurun. Bu makale, birden fazla cihazın merkezde toplanmasını bağımsız bir konu olarak ele alır ve cihazın bulunamaması ya da COM portunun açılamaması gibi genel içerikleri tekrar listelemekten kaçınır.
Kaynaklar:IETF RFC 9293 TCP belirtimi;Linux accept bağlantı arayüzü belgeleri;Feichang FCT-1500 serisi ayrıntıları;Seri sunucu sorun giderme. İlke şemaları, genel çalışma ilkelerini gösteren çizimlerdir; genel mekanizmaları açıklar ve gerçek ürünleri, ölçüm sonuçlarını veya taahhüt edilen bağlantı kapasitesini temsil etmez.
Çince teknik makaleden çevrilmiştir. Kaynağın ilk yayımlanma tarihi: 2020-08-17. Kaynağın son güncellenme tarihi: 2026-10-13T20:24:48+08:00. Çince kaynağı okuyun


