Tapaustutkimus

Tapaustutkimus: teollisuuskameran tiedonsiirron usean sekunnin pysähdysten eristäminen

Tekninen tapaustutkimus usean sekunnin ajaksi pysähtyvästä teollisuuskameran tiedonsiirrosta: oire, rajoitteet, havainnointi, eristäminen ja parannus.

Tapauksen yhteenveto

Tapaus koski teollisuuskameran ohjausta, jossa tiedonsiirto yleensä toimi, mutta pysähtyi ajoittain usean sekunnin ajaksi. Pysähdys saattoi näyttää sekä sovelluksen että verkon viasta, joten ensin oli selvitettävä, mikä tarkalleen oli pysähtynyt.

Oire

  • Tiedonsiirto pysähtyy harvoin usean sekunnin ajaksi
  • Käyttöliittymä tai koko prosessi ei vaikuta olevan täysin jumissa
  • Laiteohjauksessa usean sekunnin katkokin vaikuttaa merkittävästi tuotantoympäristössä

Rajoitteet

  • Vika esiintyy harvoin, eikä toistamisen ehtoja ole helppo nähdä pelkistä lokeista
  • Vika voi näyttää syntyvän missä tahansa: kameran SDK:ssa, verkkokortissa, kytkimessä tai sovelluksen toteutuksessa
  • Rajaus oli tehtävä rikkomatta tuotantoa vastaavaa kokoonpanoa

Mitä havainnoimme

  • Jotta sovelluksen sisäiset syyt voitiin sulkea pois ensin, tarkistettiin käsittelyviiveet ja poikkeukset
  • Pakettikaappauksesta havainnoitiin Retransmission-tapahtumat ja aikaerot
  • Tarkistettiin, vastaavatko TCP-asetukset ja uudelleenlähetyksen odotusajan muoto oiretta

Miten rajasimme ongelman

Tarkistimme, voidaanko tiedonsiirtokatkoa käsitellä ei sovelluksen pysähtymisenä vaan paketinmenetyksen jälkeisenä uudelleenlähetyksen odotuksena. Tuloksena voitiin päätellä, ettei pysähtymisen syynä ollut sovelluksen deadlock, vaan rakenne, jossa TCP:n odotusaika nousee etualalle.

Miten tilannetta parannettiin

  • Arvioitiin, onko tilanne sellainen, jossa RFC1323-aikaleimasetukset vaikuttavat
  • Säädettiin kokoonpano sellaiseksi, että uudelleenlähetyksen odotusaika voidaan pitää lyhyempänä
  • Havainnointimenettely ja rajauksen näkökulmat jäsenneltiin niin, että asiaa voidaan jatkossakin tarkastella verkkolinjan tasolla (wire level)

Palvelut, joihin tapaus liittyy

Tapaus liittyy sekä palveluun Vianetsintä ja juurisyyanalyysi, jossa vaikeasti toistettavat tiedonsiirtokatkot rajataan todisteiden avulla, että palveluun Windows-sovelluskehitys, jossa tiedonsiirron ja valvonnan suunnittelua tarkastellaan uudelleen sovelluksen näkökulmasta.

Neuvottele kanssamme

Jos tämä sivu vastaa ongelmaa, jonka parissa työskentelette, pyytäkää meiltä neuvoa kertomalla nykyinen tilanne ja millaista tukea tarvitsette.

Takaisin etusivulle